Protocol: UDP, TCP
• TCP(Transmission Control Protocol) > 안정성 중시
⸰ 목적: 데이터 전달의 신뢰성 보장
⸰ 특징
‣ 연결 지향성 > 3 way Handshake
- 데이터를 전달할 논리적인 연결을 먼저 구성
- 연결설정 > 데이터 전송 > 연결 종료
‣ 신뢰성: 순차적으로 데이터를 전송 > 확인 / 응답, 재전송, 순서번호
‣ 흐름제어: 데이터 전달에 지연 현상이 발생했을 때 데이터의 양을 조절 > Sliding Window
⸰ Service: 파일 전송: FTP / Web 서비스: HTTP
⸰ 3 way Handshake
‣ TCP 통신 시 신뢰성 및 연결 지향성 보장을 위한 기법
‣ TCP segment 전달 전 목적지와의 통신상태 확인
‣ 정상 통신 가능 > 논리적 양방향 연결 > Segment 전송
⸰ 확인 / 응답
‣ 일반 확인 응답: Segment : ACK = 1 : 1, 주로 사용
‣ 누적 확인 응답: Segment : ACK = N : 1, 문제점: 응답을 못받게 되면 누적된 데이터 전부를 재전송해야함
‣ 선택적 확인 응답: Segment : ACK = N : 1, 누적 확인 응답의 문제점을 해결하기 위함
• TCP Header(20bytes~60bytes)
⸰ Source Port Address(2bytes): 출발지 Port 주소
⸰ Destination Port Address(2bytes): 목적지 Port 주소
⸰ Sequence Number(4bytes)
‣ 순서화된 일련번호
‣ 초기순서번호는 임의의 값으로 설정(ISN, Initial Sequence Number)
‣ 전송되는 데이터의 크기를 누적시키며 순서를 알려줌
⸰ Acknowledgement Number(4bytes)
‣ 확인 응답 번호
‣ 다음 수신할 Sequence Number를 알려줌
- 받은 Sequence Number +Payload 크기
- 최초 SYN에 대한 응답: 수신한 Sequence Number +1
⸰ HLEN(4bits): TCP Header 길이, 4bytes 단위로 표시
⸰ Reserved(4bits): 예약된 Field
⸰ TCP Flags(1byte) > 연결지향성 + 확인 / 응답
‣ 논리적인 TCP 연결회선 제어 및 데이터 관리를 위해 사용
‣ TCP 메시지의 종류 명시
- URG(Urgent): 긴급데이터
- ACK(Acknowledgement): 확인 응답
- PSH(Push): 삽입
- RST(Reset): 연결 재설정(강제종료)
- SYN(Synchronization): 연결 요청
- FIN(Finish): 연결 종료
⸰ Window(2bytes) > 흐름제어
‣ 통신 상대방에게 자신의 버퍼 여유용량 크기를 지속적으로 알려줌
‣ Sliding Window 기법 사용
⸰ Checksum(2bytes)
‣ 4계층 Segment 전체와 3계층 정보 중 일부분에 대한 오류검사 값
‣ Pseudo Header를 구성하여 오류 검출 수행
⸰ Urgent Pointer(2bytes): 긴급 데이터의 위치를 나타내는 값
⸰ TCP Options(4bytes): 종류(1byte) + 길이(1byte) + Option Data
• Pseudo Header(12bytes)
⸰ Layer4의 오류검출용
⸰ 보안, 기능성이 떨어지는 IP의 오류검출을 함께 수행
⸰ IP의 일정 정보를 포함한 헤더를 생성한 후 TCP/UCP Segment에 Encapsulation 후 오류검출 수행
⸰ 초기상태의 Checksum = 0
⸰ 오류검출 값을 획득한 후 Pseudo Header 삭제 > 실제 통신 시 Segment만 전달
⸰ 작동방식
장비
• L4 Switch > 부하 분산, QoS(Quality of Service)
⸰ TCP/UDP Port번호를 이용하여 트래픽을 서비스 별로 분류하여 포워딩하는 장비
⸰ 주요 기능: Load Balancing
⸰ Load Balancing: 부하 분산, 특정 시스템이 받게 되는 부하를 동일 기능 수행이 가능한 여러 시스템으로 분산
'Network 해봐~' 카테고리의 다른 글
네트워크 접근 제어(ACL) (0) | 2023.12.29 |
---|---|
네트워크 경로 설계(Routing) (0) | 2023.11.16 |
Layer 4 Transport(전송 계층)[Protocol(UDP)] (0) | 2023.10.04 |
Layer 4 Transport(전송 계층)[역할 및 주소] (0) | 2023.10.04 |
Layer 3 Network(네트워크 계층)[장비] (0) | 2023.09.27 |
댓글