protocol stack의 가장 위에 존재한다
사용자가 직접 접하는 protocol
다양하며 시대에 따른 변화가 크다
process에게 있어서 network로 나가는 문과 같은 존재
ip address port number 로 identify가 됨. 소켓이 지정된다.
소켓하나가 프로세스 하나에 연결된다.
애플리케이션 안에 멀티 프로세스가 존재하고 각 프로세스에 하나의 소켓이 배정되는것
따라서 애플리케이션에는 여러개의 소켓이 배정된다.
전송 L4 이하 계층 관점에서의 요구사항
transport layer에게 바라는 점
elastic - 탄력저긴 여기서는 데이터 통신량이 탄력적이여도 된다는 의미로 사용된거 같은느낌
실시간이 중요한 서비스는 pdu loss를 허락하고 time sensitve하지만 그렇지 않는 경우에는 이를 보완하기 이위해서 pdu loss를 허용하지 않는다 예를 들어서 email같은 경우엔 정확한 정보를 원하고 실시간 지원이 아니기 때문에 pdu loss를 혀용하지 않는다
1990년대 초 world wide web 이 시초가됨
hyperText Transfer Protocol(HTTP)
- web을 실현해주는 전송 프로토콜
- on demand기반 동작
RFC1945, 2616
http관련개념
web broser: http 내용을 시각적으로 보여주는 application
web server: SERVER 측 http 수행 개체이며 url의 host name에 존재
TCP 연결을 기반으로 동작
simpe stateless protocol
client 측에서 그때그때 필요한 것을 요구
server는 요구에 대한 단순응답
http 는 기본적으로 client 가 sever에게 hypertext의 구성요소를 하나씩 요청해서 받아가는 형채
나의 network 내에 존재하는 proxy server에서 곧바로 받으므로 respose time 이 작음
나의 network 내의 bottleneck 부분의 traffic양을 줄일 수 있음
- 적은 용량으로 많은 http 요청 커버가능
binary file등을 전송하기 위한 프로토콜
ㅅTCP or UDP
오늘날은 보안 상의 문제로 잘 사용하지 않음
elecetronic mail
user agent/ mail server, simple mail transfer protocol(SMTP)
client SMTP(local mail server) → server SMTP(remote mail server)
- TCP port 25연결 시도
- handshaking 으로 mail 전송에 대한 사전 정보 교환
- email address of sender and recipient
- reliable data transfer through TCP
lMAP session간 user state information 이 연동
local pc와 mail server가 저장한 mail data가 동일하도록 동기화 되며, 마치 하나인것처럼 동작함
서로 다른 host에서도 mail data 과리가 동기화 되어 이루어질 수 있음
어떤 형태의 data든 전송가능
SMTP: push protocol - 상대방 quueu에 밀어넣는 방식
7bit ASCII 형태로 송수신 되어야함(필요시 원래 문자 혹은 binary data를 encoding해야함)
- 하나의 메세지에 메시지 object를 모두 포함
-