본문 바로가기

공부/네트워크

애플리케이션 레이어 정리

반응형

bandwidth 보다 평균 속도가 낮다고 해서 Delay가 없는 것이 아니다.

 -> 평균보다 갑자기 빠른 데이터가 들어오면, bandwidth를 넘어서 막히는 경우가 발생. 지연 시간이 무한대로 늘어날 수가 있다.


캐시 일관성 문제 - 캐시에 있는 정보가 웹에 있는 정보와 일치하지 않을 수 있다.

 -> conditional GET 사용.

HTTP REQUEST - if modified field 사용.

이 이후에 업데이트 된 적이 있으면 304 not modified response를 보낸다. (오브젝트를 보내지 않음)


DNS(domain name system)

NAME을 쓰면 IP address로 변환

주소 : IP + 포트(웹 서버 80)

IP : 32bit 주소 체계 xxx.xxx.xxx.xxx



문제점

검색 시간이 오래걸림.

주소를 알아오기 위한 준비 단계 -> 엄청 멀리 가야함

해당 지점이 다운되면 웹 브라우징을 할 수 가 없음


-> 분산시스템을 이용


TLD (Top level domain server)

              /


.com            ...                .kr


ac.kr

hanyang.ac.kr


이 아래에도 하나의 기관

매핑되는 주소가 존재한다.



TTL : time to live :데이터의 유효 기간. 정해진 유효 기간이 끝나면 데이터는 폐기된다. - 일관성 문제 해결


TYPE : A, NS

A: 

name - host name

value - IP address

NS: 

name : domain(xxx.com)

value host name // server for this domain


NS로만 이동할 수 없기 때문에 NS와 A는 쌍으로 다닌다.



=> 장점 : 해당 기관의 데이터만 업데이트하면 됨



http: TCP 기반

DNS : UDP 기반 - 주소를 변환하기 위한 준비운동 단계이기 때문에 데이터가 크지 않고, 속도도 빨라야 한다.



SOCKET

TCP 

socket() - bind() - listen() - accept() -                         -read()  - close()

socket() -                                         connect()       - write() - close() 


listen() - 연결 요청에 대한 소켓을 큐에 넣음

accpet() - 큐에서 연결 요청을 하나 뺌. 큐가 비어 있다면 block.


UDP



반응형

'공부 > 네트워크' 카테고리의 다른 글

트랜스포트 레이어 정리  (0) 2018.10.29