[Network] Protocol layers

seb·2023년 4월 6일
0

네트워크

목록 보기
1/9
post-thumbnail

📚 Network

ㄴ 📒 Chap.1

ㄴ 📄 Protocol layers


Networks are complex, with many "pieces"

  • hosts
  • routers
  • links of various media
  • applications
  • protocols
  • hardware, software

이러한 복잡한 네트워크를 어떻게 조직화 할 수 있을까? 🤷‍♀️


비행 서비스를 예시로 생각해보면, ticket, baggage, gate, runway, routeing 각각의 서비스로 구성된 계층 구조를 가지는 것을 알 수 있다. 네트워크 또한 마찬가지로 Protocol layers로 구성되어 각 계층에서 서비스를 제공하는 방식으로 조직화할 수 있다.


📌 Why layering?

  • 각 계층의 서비스를 모듈화하여 유지보수 및 시스템 업데이트가 용이하다. 특정 계층의 서비스가 변경되어도 다른 계층에 영향을 미치지 않는다.
    ex) gate service의 절차가 변경되어도, 다른 계층인 ticketing, baggage 서비스에 영향을 미치지 않는다.

📌 Internet protocol stack (Tcp 5계층)

Internet protocol stack은 다음과 같이 5개의 계층으로 나뉘어있다.

  1. application
    network application 지원
    ex) HTTP, IMAP, SMTP, DNS

  2. transport
    프로세스 간의 데이터 전송
    ex) TCP, UDP

  3. network
    데이터 그램 라우팅 (source -> destination)

  4. link
    이웃한 라우터, 호스트 간의 데이터 전송
    ex) Ethernet, 802.11 (WiFi)

  5. physical
    실제 데이터 전송

OSI reference model

ISO의 OSI referecne model으로 7계층 구조를 가지고 있다.

- presentation layer : 데이터 포맷을 어떻게 나타낼 것인가 (암호화,압축..)

- session : 동기화, 체크 포인팅, 데이터 교환 시의 복구

Internet protocol에서는 application layer에 presentation, session layer를 포함시킨다.


📌 Encapsulation

source와 destination과의 message 교환은 application layer에서 transport layer에 message를 전달하고 이때, transport layer는 자신의 header를 붙여 캡슐화를 하게 된다. 이와 같이, 각 layer를 지날 때마다 각 계층에 필요한 정보들을 포함한 header가 붙게 된다.

- Encapsulation(캡슐화) : 상위 layer에서 받은 패킷에 자신의 헤더를 덧붙이는 것

- Header : 각 계층에 필요한 정보 및 기능이 담겨있다.

ex) 누가 보내는지, 받는 프로세스가 누구인지, 어떤 프로세스가 어떤 기능을 수행했는가

- Payload

상위 layer에서 받은 보내고자 하는 데이터 자체를 뜻한다. 

Message Protocols에서 Protocol overhead와 데이터의 구별할 때 사용된다. 

Protocol overhead는 통신에 도움을 주는 부가적인 정보이다.

- PCI (Protocol Control Information)

Header와 동일하며 각각의 계층에 필요한 정보 및 기능이 담겨있다.

- SDU (Service Data Unit)

Layer의 상위 계층에서 하위 계층으로 내려오는 데이터를 뜻한다.

- PDU (Protocol Data Unit)

4계층에서는 segment, 3계층에서는 packet, 2계층에서는 frame 이라 부른다. 
PDU = PCI(Header) + SDU(data)
상위 계층에서 PCI와 SDU가 합쳐져 PDU를 생성하고 하위 계층으로 전달하여 SDU가 된다.

📌Source to Destination

  • source에서 destination까지 message가 전달되는 과정
  1. application layer에서 전달하고자 하는 message가 각 계층을 지나며 필요한 정보를 포함한 헤더가 붙게되고 전달된다.

  2. switch는 link layer까지, router는 network layer까지 필요한 정보를 읽고 (경로 확인 등등..)

  3. destination에서 각 계층에서 필요한 정보를 읽고 application에서 message를 전달받는다.

또한, 종단 시스템의 경우 5개의 layer, switch는 2개의 layer, router는 3개의 layer를 가지는 것을 알 수 있다. switch의 경우 network layer가 없기 때문에 IP 주소를 확인할 수 없고 routing을 수행하지 못한다. router의 경우 newtork layer를 포함하고 있어 IP 주소를 확인하여 fowarding을 수행할 수 있다.


🔎 [참고 문헌]

Computer Networking A Top-Down Approach 7-th Edition / Kurose, Ross / Pearson


0개의 댓글