-
데이터를 사용자에게 전달하는 계층
-
하위 세 개의 계층(Host-to-Network, Internet, Transport)은 모두 데이터가 한 컴퓨터에서 다른 컴퓨터로 어떻게 전송되는지를 정의하는 데 협력한다.
-
Application layer은 데이터가 전송된 후에 어떻게 처리할지를 결정한다.
-
예를 들어, HTTP와 같은 protocol은 웹 브라우저가 그래픽 이미지를 숫자의 긴 스트림이 아닌 그림으로 표시하도록 보장한다.
-
-
Application layer은 여러분의 프로그램의 네트워크 부분 대부분이 시간을 보내는 곳이다.
-
다양한 application layer protocol이 있다
-
웹을 위한 HTTP,
-
이메일을 위한 SMTP, POP, IMAP
-
파일 전송을 위한 FTP, FSP, TFTP
-
파일 접근을 위한 NFS
-
파일 공유를 위한 Gnutella와 BitTorrent
-
음성 통신을 위한 Session Initiation Protocol (SIP) 및 Skype 등이 있다.
-
-
필요한 경우 고유한 application layer protocol을 정의할 수 있다.
-
Skype protocol은 기본적으로 P2P architecture를 기반으로 하며, 사용자 간의 음성 통화, 비디오 통화, 메시지 전송 등을 가능하게 한다.
-
Skype의 특성 및 보안 요구 사항을 충족하기 위해 개발되었다.
-
Skype만의 위한 비공개 protocol
-
> GET /index.html HTTP/1.1
> Host: servername
< HTTP/1.1 200 OK
< ....
-
개발자 도구를 띄웁니다.
-
Windows:
ctrl + shift + i
-
MacOS:
cmd + option + i
-
개발자 도구를 아래쪽으로 붙입니다.
-
네트워크 탭을 확인합니다.
-
브라우저 주소창에 https://httpbin.org/get?msg=hello을 입력해봅니다.
$ curl http://httpbin.org/get?msg=hello
$ curl -v http://httpbin.org/get?msg=hello