정보보안기사

29강 Section 19. TCP/IP(네트워크 계층 프로토콜)

김웅냄 2023. 11. 25. 02:45

- 전송 계층

 > 연결형 : 패킷이 종송적으로 TCP

 > 비연결형 : 패킷이 독립적으로 UDP

 

- 네트워크 계층

 > 연결형 : 서로 다른 패킷이 동일한 경로 가상회선

 > 비연결형 : 서로 다른 패킷이 상이한 경로 데이터그램 방식으로 IP


- UDP

 > 사용자 데이터그램 프로토콜(UDP, user datagram protocol)은 비연결형이며 신뢰성없는 전송 프로토콜

 > 작은 메시지를 송신하거나 신뢰성에 관하여 그다지 신경 쓰지않을 경우 UDP 사용


- UDP 서비스

 > 프로세스:프로세스 통신으로 IP:포트(소켓 주소)를 이용하여 통신

 > 비연결형 서비스를 제공

 > 흐름제어가 없음 즉, 용량 커도 보냄

 > 오류제어 메커니즘이 없음

 > 혼잡 제어를 제공하지 않아 보통 실시간 Live로 보냄

 > 다중화 및 역다중화 지원


- TCP 

 > UDP처럼 포트 번호를 사용하여 프로세스간 통신

 > TCP 송/수신은 각각 버퍼가 있으며 두 버퍼는 TCP 흐름 및 오류 제어 기법에 사용됨

 > 전이중 통신(full-duplex)로 세그먼트는 양방향으로 이동함

 > 다중화 및 역다중화 지원

 > 논리적인 연결통로를 통해 전송 순서를 보장(순서제어)하며 연결-지향 프로토콜

 > UDP와는 반대로 신뢰성 있는 전송 프로토콜


- TCP와 UDP 비교

서비스 TCP UDP
신뢰성 패킷이 목적지 도달했는 지 확인 및
패킷 도달 시 ACK를 수신하므로 신뢰성 있음
ACK보내지 않으며 목적지 도달 여부 확인하지 않으므로 신뢰성 없음
연결 연결지향적이므로 Hand-Shaking 수행 비연결지향적이므로 Hand-Shaking 수행안함
패킷 순서 패킷 내 순서번호를 사용하여 순차적으로 수신 순서번호 사용 안함
혼잡 제어 수신자는 송신자의 데이터가 많아 처리가 어렵거나 느려질 경우 송신자에게 이를 통보함 수신자는 송신자에게 흐름제어 하지 않음
사용 신뢰성 있는 전송 스트르밍 비디오 및 브로드 캐스트 등 빠른 처리 시 사용
속도와 오버헤드 UDP보다 느림 TCP보다 빠름

- TCP 패킷(세그먼트)

 

 > Sequence Number : 임의의 번호로 시작

 > 제어플러그 : 

플래그 의미 설명
URG 긴급 세그먼트 내 우선순위 높인게 있으며 긴급 포인터 필드로 활용
ACK 승인 상대방으로부터 수신한 것에 대한 응답
PSH 밀어넣기 세그먼트 받을 시 바로 어플리케이션단으로 송신
RST 초기화 연결을 초기화 (강제)
SYN 동기화 순서 번호 동기화 및 연결 수립 요청
FIN 종료 연결을 종료 (요청)

- SYN 플러딩 공격

 > 공격자가 희생자한테 SYN(SIP/DIP)을 보냄 (단, SIP는 존재하지 않음)

 > 희생자는 존재하지 않는 SIP에 SYN, ACK를 송신함

 > 공격자가 지속적으로 SYN을 보내 서비스 거부 공격을 일으킴

 

- 대응 방법

 > TCP 연결 과정 대기시간을 줄임

 > 방화벽에 동일 클라이언트IP에 대해 연결 요청(SYN) 임계치 설정


- 절반 폐쇄

 > TCP에서 데이터 주고 받는 중 한쪽 끝은 데이터 전송을 중단 할 수 있으며 이를 절반 폐쇄라고함

 > 절반 폐쇄 시 클라이언트는 서버한테 데이터X 응답 O 서버는 클라이언트 서버한테 데이터O