IT 프로그래밍/컴퓨터네트워크

[컴퓨터네트워크] part2 -2장 응용 계층 프로토콜

기술1 2024. 10. 6. 11:52

응용 계층 프로토콜

서로 다른 종단 시스템에서 수행되고 있는 응용 프로세스들이 어떻게 서로에게 메세지를 전달하는 가에 대한 정의입니다. 

 

고려해야할 것

  • 교환되는 메세지 타입
  • 여러 메세지 타입의 문법 
  • 필드의 의미
  • 언제 그리고 어떻게 프로세스가 메세지를 전송하고, 메세지 응답하는지 규칙

Public domain (open) protocols

  • RFC 문서로 상세사항 공개
  • HTTP나 SMTP

Proprietary protocols(독점적)

  • KAZAa,skypa
  • 상세사항 기밀로 공개 x

어플리케이션 어떤 전송 서비스 필요 하는가

전송 프로토콜은 네트워크를 통해 메세지를 수신 프로세스까지 전달할 책임이 있습니다.

 

어플리케이션의 서비스 요구 사항

 

데이터 손실

  • 어떤 어플리케이션이 손실에 대해서 견뎌낼 수 있는가
  • 다른 어플리케이션은 100% 신뢰성 요구 존재

Bandwidth(throughput) 대역폭

  • 최소 대역폭 요구사항 존재
  • 다른 앱은 존재하지 않는 경우 존재

Timing

  • 지연에 대한 요구사항
  • 어떤 어플리케이션은 메세지를 보내면 지연에 대한 요구사항 가짐

Security    

  • 데이터 암호화

예를들면 파일전송 같은 경우 데이터 손실이 있으면 안되고 대역폭은 신경쓰지 않아도 되며 타이밍도 크게 중요하지 않은 것입니다. 그런데 우리가 실시간 비디오나 스트리밍 서비스 같은 경우 데이터 손실 약간은 허용합니다. 그런데 대역폭의 요구사항은 5kbps - 1mbps같은 최소 대역폭이 존재할 수 있습니다.

 

인터넷 전송계층의 두가지 서비스 TCP, UDP

TCP(Transmission Control Protocol service)

  • 신뢰성 보장
  • connection-oriented
  • reliable transport
  • flow control
  • congestion control

UDP(User Datagram Protocol)

  • 신뢰할 수 없는 데이터 전송

TCP : 웹, 파일전송, 이메일, 인터넷 TELEPHONY, 스트리밍 오디오(둘 다 가능), 웹문서, interactive games

UDP : 스티리밍서비스, 인터넷 telephoy, interactive games

 

TCP & UDP

  • 보안 제공하지 않음

SSL(Secure Socket Layer)

  • 암호화된 TCP 커넥션 제공
  • 무결정
  • 인증 제공

어떤 어플리케이션이 Security를 필요로한다면 SSL 같은 프로토콜을 사용을 해야합니다. SSL은 TCP를 사용하면서 암호화된 통신을 제공할 수 있습니다. 

 

TLS(Transport Layer Security)