(SK쉴더스)AI 활용한 클라우드 & 보안 전문가 양성 캠프

[새싹 성동 2기] 1-2. 계층별 장비와 TCP/IP

hunm719 2024. 10. 24. 20:56

1-1 에서 네트워크에 대한 기본적인 개념들을 배웠고, 네트워크 통신을 7단계로 나눈 OSI 7 계층에 대해서도 학습했다.

이번에는 각 계층 마다 수행하는 특정 기능과 관련된 장비들에 대해 정리해보고, 이후 TCP/IP의 개념을 학습하고 OSI 7계층과 서로 비교해보겠다. 마지막으로 TCP와 UDP는 각각 무엇이고 어떻게 다른지 정리하겠다.

 

 

 

[1] 계층별 장비

  • 1계층 장비
    • 허브(Hub) : 여러 장치가 연결될 수 있는 중앙 집중식 장비로, 수신한 데이터를 모든 포트로 전송함(Flooding)
    • 허브를 사용해 장비를 연결하면 그 허브는 하나의 collision domain이 되고, 허브로 네트워크를 구축 & 확장하면 Large collision domain이 형성됨
    • 충돌이 잦으면 데이터 전송 오류가 생길 수 있고 Large broadcast domain이 형성되어 네트워크 장비 부하가 커짐
  • 2계층 장비
    • 브릿지(bridge) : 두 개 이상의 허브를 연결하여 데이터 흐름을 관리하는 장비
    • 스위치(Switch) : MAC 주소를 기반으로 데이터를 특정 장치에 전달하는 장비로, 효율적인 데이터 전송을 위해 포트를 기반으로 프레임을 필터링함
    • 스위치를 활용해 네트워크를 구축 & 확장하면 포트별로 collision domain을 나누기 때문에 충돌 이슈가 줄어듦
    • 하지만 목적지 주소가 MAC Table에 없다면 flooding하기 때문에 결국 Large broadcast domain이 형성됨
  • 3계층 장비
    • 라우터(Router) : 패킷을 목적지 주소에 따라 다른 네트워크로 전달하는 장비로, 경로를 수집한 후 최적 경로(Best Path)를 결정후 Routing Table에 저장함
    • L3 스위치 : 스위치의 기능과 라우터의 기능을 모두 제공하는 장비
  • 4계층 장비
    • 게이트웨이(Gateway) : 서로 다른 네트워크 간의 통신을 가능하게 하는 장비로, 프로토콜 변환을 수행
    • 프록시 서버(Proxy) : 클라이언트의 요청을 대신 처리하여 서버와 통신하는 장비

※  ARP (Address Resoultion Protocol) : 네트워크에서 IP 주소를 해당하는 MAC 주소로 변환하는 프로토콜

 - 장비 A가 특정 IP 주소로 데이터를 전송하려고 할 때, 해당 IP 주소에 대한 MAC 주소가 필요함

 1. 장비 A는 특정 IP 주소의 MAC 주소에 대한 응답을 브로드캐스트 방식으로 네트워크에 요청함(=ARP)

 2. 해당 요청은 같은 네트워크 안에 있는 모든 장비에게 전달되고, 해당 IP 주소를 가진 장비 B가 ARP 요청을 수신하면 자신의 MAC 주소를 포함한 ARP 응답을 장비 A에게 unicast 방식으로 보냄

 3. 이후 장비 A는 장비 B의 MAC 주소를 알고 있으므로, 데이터를 전송할 수 있음(이 과정에서 해당 IP 주소와 MAC 주소를 ARP cache에 저장하고, 다음 번에는 해당 IP 주소에 대한 ARP 요청을 생략할 수 있음)

 

 

 

[2] TCP/IP (Transmission Control Procotol / Internet Protocol)

-TCP/IP는 인터넷에서 데이터를 전송하는 표준 프로토콜로 4계층으로 이루어져있음

  1. 네트워크 액세스 계층 : 물리적 전송, MAC 주소 등을 포함
  2. 인터넷 계층 : IP 프로토콜을 사용해 패킷 라우팅과 전송을 담당
  3. 전송 계층 : TCP와 UDP를 통해 데이터 전송의 신뢰성과 순서를 관리
  4. 애플리케이션 계층 : HTTP, FTP, SMTP 등의 애플리케이션 프로토콜이 여기에 속함

 

-실용적인 통신의 관점에서 OSI 7걔층 모델을 단순화한 구조

출처 : 새싹캠퍼스

 

 

[3] TCP의 특징과 함께 비교하는 UDP의 특징

 

-TCP의 특징

  1. 연결 지향 프로토콜(Connection-Oriented Protocol) : 통신을 시작하기 전 송신자와 수신자 간의 연결이 성립되어야 함
  2. 신뢰성 있는 전송(Reliable Transmission) : 데이터가 순서대로, 손실없이 도착하도록 보장함. 만약 패킷이 손상되면, 이를 감지하고 재전송하여 데이터의 무결성을 유지함
  3. 데이터 흐름 제어(Flow Control) : 송신자와 수신자가 각자의 데이터 처리 속도를 조정하여 네트워크 과부하를 방지함
  4. 혼잡 제어 (Congestion Control) : 네트워크가 혼잡해지면 데이터 전송을 줄이는 메커니즘을 통해, 패킷 손실을 줄이고 네트워크 성능을 유지함
  5. 순서 보장 (Ordered Data Transfer) : 데이터 패킷이 순서에 맞게 수신 측에 도달하도록 순서를 보장함 각 패킷에 순번을 부여해, 전송 중 뒤섞이더라도 수신 측에서 올바르게 재조립할 수 있음
  6. 오류 검출과 복구 (Error Detection and Recovery) : 전송 도중 발생할 수 있는 오류를 감지하고 복구하는 메커니즘이 포함되어 있음
  7. 세그먼트 크기 조정 (Segmentation and Reassembly) : 큰 데이터를 작은 조각(segment)로 나누어 전송하고, 수신 측에서 이를 재조립하여 원본 데이터를 복원함. 효율적인 데이터 전송이 가능함

 

 

-UDP의 특징

  1. 연결 비지향 프로토콜(Connectionless Protocol) : 송신자와 수신자가 미리 연결을 설정하지 않고 데이터를 전송함. 연결 설정 과정이 없어 전송 속도가 더 빠름
  2. 비 신뢰성(Unreliable Protocol) : 패킷 손실 시 재전송하지 않고, 순서도 보장하지 않음(빠른 전송이 중요한 애플리케이션에 적합)
  3. 오버헤드가 적음 : 연결 설정, 흐름 제어, 혼잡 제어, 오류 복구 등을 생략하여 TCP에 비해 오버헤드가 적음
  4. 속도 중심의 전송 : 전송 속도가 최우선인 애플리케이션에 적합함 (예시 : 스트리밍 서비스)