1. 컴퓨터 네트워크 개요
1.1 컴퓨터 네트워크 분류
네트워크 범위에 따른: 광역 네트워크(WAN), 수도권 네트워크 (MAN), 근거리 통신망(LAN);
네트워크 사용자에 따라: 공용 네트워크, 사설 네트워크.
1.2 컴퓨터 네트워크의 계층 구조
TCP/IP 4계층 모델과 OSI 아키텍처 비교:
1.3 계층 구조 설계의 기본 원칙
각 레이어는 서로 독립적입니다.
각 레이어는 충분히 유연해야 합니다.
각 레이어는 완전히 분리되어 있습니다.
1.4 컴퓨터 네트워크의 성능 지표
속도: bps=bit/s 지연: 전송 지연, 전파 지연, 큐잉 지연, 처리 지연 왕복 시간 RTT: 데이터 소요 시간 패킷이 종단 간 통신에서 앞뒤로 이동하는 경우.
2. 물리 계층
물리 계층의 역할: 서로 다른 물리적 장치를 연결하고 비트 스트림을 전송합니다. 이 계층은 상위 계층 프로토콜의 데이터 전송을 위한 안정적인 물리적 매체를 제공합니다. 간단히 말해서, 물리적 계층은 원시 데이터가 다양한 물리적 매체를 통해 전송될 수 있도록 보장합니다.
물리적 계층 장비:
증폭기라고도 하는 리피터: 동일한 LAN의 재생 신호는 두 포트의 네트워크 세그먼트가 동일한 프로토콜이어야 합니다. : 10BASE -5 이더넷에서는 최대 4개의 리피터를 직렬로 연결할 수 있으며, 5개의 세그먼트 중 3개만 호스트에 연결할 수 있습니다.
허브: 동일한 LAN에서 신호 재생 및 증폭( 다중 포트 리피터) 반이중은 충돌 도메인이나 브로드캐스트 도메인을 격리할 수 없습니다.
채널의 기본 개념: 채널은 정보를 한 방향으로 전송하는 매체입니다. 통신 회로에는 송신 채널과 수신 채널이 포함됩니다.
단방향 통신 채널: 반대 방향의 피드백 없이 한 방향으로만 통신할 수 있는 채널
반이중 통신 채널: 양측 모두 정보를 주고받을 수 있지만, 동시에 수신할 수도 없습니다.
전이중 통신 채널: 양측이 동시에 보내고 받을 수 있습니다.
3. 데이터 링크 계층
3.1 데이터 링크 계층 개요
데이터 링크 계층은 네트워크 계층에서 제공하는 서비스를 기반으로 네트워크 계층에 서비스를 제공합니다. 물리 계층의 가장 기본적인 서비스는 네트워크 계층에서 인접한 노드의 대상 네트워크 계층으로 데이터를 안정적으로 전송하는 것입니다. 데이터 링크 계층은 신뢰할 수 없는 물리적 미디어를 통해 안정적인 전송을 제공합니다.
이 계층의 기능에는 물리적 주소 지정, 데이터 프레이밍, 흐름 제어, 데이터 오류 감지, 재전송 등이 포함됩니다.
데이터 링크 계층에 대한 중요한 지식 포인트:
데이터 링크 계층은 네트워크 계층에 안정적인 데이터 전송을 제공합니다.
기본 데이터 단위는 프레임입니다. ;
주요 프로토콜: 이더넷 프로토콜;
두 가지 중요한 장치 이름: 브리지 및 스위치.
프레임으로 캡슐화 : "프레임"은 데이터 링크 계층 데이터의 기본 단위입니다.
투명한 전송 : "투명"이란 제어 문자가 프레임 데이터에 있어도 처리할 존재가 없는 것으로 처리되어야 합니다. 즉, 제어 문자 앞에 이스케이프 문자 ESC를 추가합니다.
3.2 데이터 링크 계층에서 오류 모니터링
오류 감지: 패리티 검사 코드, 순환 중복 검사 코드 CRC
패리티 검사 코드 – 제한사항 안전: 2개일 때 비트가 잘못되었습니다. 오류가 감지되지 않습니다.
순환 중복 검사 코드: 전송되거나 저장된 데이터를 기반으로 고정 숫자 검사 코드가 생성됩니다.
3.3 최대 전송 단위 MTU
최대 전송 단위 MTU(Maximum Transmission Unit), 데이터 링크 계층의 데이터 프레임은 무한하지 않으며 데이터 프레임의 길이는 제한되어 있습니다. MTU에 따라 결정됩니다.
p>
경로 MTU: 링크의 MTU 최소값에 따라 결정됩니다.
3.4 이더넷 프로토콜에 대한 자세한 설명
MAC 주소: 각 장치에는 16진수로 표현되는 48비트의 고유한 MAC 주소가 있습니다.
이더넷 프로토콜: 널리 사용되는 LAN 기술이며 데이터 링크 계층에 적용되는 프로토콜입니다. 이더넷은 인접한 장치 간의 데이터 프레임 전송을 완료하는 데 사용할 수 있습니다.
LAN 분류:
이더넷 IEEE802.3:
이더넷은 최초로 널리 배포된 고속 LAN입니다.
이더넷 데이터 속도가 빠릅니다.
p>이더넷 하드웨어가 저렴하고 네트워크 비용이 저렴함
이더넷 프레임 구조:
유형: 상위 계층 프로토콜 식별(2바이트)
대상 주소 소스 주소: MAC 주소(각각 6바이트)
데이터: 캡슐화된 상위 계층 프로토콜 패킷(46~1500바이트)
CRC: 순환 중복 코드(4바이트)
p>
가장 짧은 이더넷 프레임: 가장 짧은 이더넷 프레임은 64바이트입니다. 이더넷 프레임은 데이터 부분을 제외하고 18바이트입니다.
MAC 주소(물리적 주소, LAN 주소)
MAC 주소는 6바이트, 48비트입니다.
MAC 주소는 고유하며 각 네트워크 어댑터는 MAC 주소에 해당합니다. > p>
일반적으로 16진수 표기법을 사용하며, 각 바이트는 - 또는 다음과 연결된 16진수를 나타냅니다.
MAC 브로드캐스트 주소: FF-FF-FF- FF-FF-FF.
4. 네트워크 계층
네트워크 계층의 목적은 두 최종 시스템 간의 투명한 데이터 전송을 실현하는 것입니다. 특정 기능에는 주소 지정 및 라우팅, 연결 설정, 유지 관리 및 종료 등이 포함됩니다. . 데이터 교환 기술은 메시지 교환(기본적으로 패킷으로 대체)입니다. 저장 및 전달 방식이 사용되며 데이터 교환 단위는 메시지입니다.
네트워크 계층에는 TCP/IP의 핵심 프로토콜인 IP 프로토콜인 가장 중요한 프로토콜을 포함하여 많은 프로토콜이 포함됩니다. IP 프로토콜은 매우 간단하며 신뢰할 수 없는 비연결 전송 서비스만 제공합니다. IP 프로토콜의 주요 기능은 비연결 데이터그램 전송, 데이터그램 라우팅 및 오류 제어입니다.
해당 기능을 구현하기 위해 IP 프로토콜과 함께 사용되는 것은 주소 확인 프로토콜 ARP, 역방향 주소 확인 프로토콜 RARP, 인터넷 메시지 프로토콜 ICMP 및 인터넷 그룹 관리 프로토콜 IGMP입니다. 다음 섹션에서 특정 프로토콜을 요약하겠습니다. 네트워크 계층에 대한 핵심 사항은 다음과 같습니다.
1. 네트워크 계층은 서브넷 간의 데이터 패킷 라우팅을 담당합니다. 또한 네트워크 계층은 혼잡 제어 및 인터넷 상호 연결과 같은 기능도 구현할 수 있습니다.
2. 기본 데이터 단위는 IP 데이터그램입니다.
3. 주요 프로토콜은 다음과 같습니다.
p >
IP 프로토콜(인터넷 프로토콜, 인터넷 인터넷 프로토콜),
ICMP 프로토콜(인터넷 제어 메시지 프로토콜, 인터넷 제어 메시지 프로토콜),
ARP 프로토콜(주소 확인 프로토콜) ), 주소 확인 프로토콜),
RARP 프로토콜(역방향 주소 확인 프로토콜, 역방향 주소 확인 프로토콜).
4. 중요 장비: 라우터.
라우터 관련 프로토콜
4.1 IP 프로토콜에 대한 자세한 설명
IP 인터넷 프로토콜은 인터넷 네트워크 계층의 핵심 프로토콜입니다. 가상 인터넷 네트워크의 출현: 실제 컴퓨터 네트워크는 IP 프로토콜을 사용하여 물리적 네트워크 간의 차이를 보호하므로 복잡합니다. 네트워크의 호스트가 IP 프로토콜을 사용하여 연결되면 네트워크 세부 사항에 주의할 필요가 없습니다. 가상 네트워크를 형성합니다.
IP 프로토콜은 복잡한 실제 네트워크를 가상으로 연결된 네트워크로 바꾸고 가상 네트워크의 데이터그램 전송 경로 문제를 해결합니다.
그 중 버전은 IP 프로토콜의 버전을 나타내며 IPv4, IPv6와 같이 4비트를 차지하며, 헤더 길이는 4비트를 차지하는 IP 헤더의 길이를 나타내며 최대값은 다음과 같습니다. 15비트의 총 길이는 16비트를 차지하는 IP 데이터그램의 전체 길이를 나타내며, 최대값은 65535입니다. TTL은 네트워크에서 IP 데이터 메시지의 수명을 나타내며, 프로토콜은 어떤 프로토콜인지 나타냅니다. IP 데이터가 전달하는 특정 데이터는 TCP 및 UDP와 같습니다.
4.2 IP 프로토콜의 전달 과정
4.3 IP 주소의 서브넷 분할
클래스 A(8개의 네트워크 번호 + 24개의 호스트 번호), 클래스 B(16개의 네트워크) 번호 + 16 호스트 번호), 클래스 C(24 네트워크 번호 + 8 호스트 번호)는 네트워크에서 호스트 또는 라우터를 식별하는 데 사용할 수 있으며, 클래스 D 주소는 그룹 브로드캐스트 주소로 사용되며, 클래스 E 주소는 예약되어 있습니다.
4.4 네트워크 주소 변환 NAT 기술
여러 호스트가 공용 IP를 통해 인터넷에 액세스하는 사설망에서 사용됩니다. 이는 IP 주소 소비 속도를 늦추지만 IP 주소의 복잡성을 증가시킵니다. 네트워크 통신의 복잡성.
NAT 작동 원리:
인트라넷에서 전송된 IP 데이터그램의 IP 주소는 NAT 서버가 소유한 합법적인 공용 IP 주소로 대체되며 관계도 대체됩니다. NAT 변환 테이블에 기록;
공용 인터넷에서 반환된 IP 데이터그램의 경우 대상 IP 주소를 기준으로 NAT 변환 테이블을 검색하고 대상 IP 주소를 검색된 내부 개인 IP 주소로 대체합니다. . 을 누른 다음 IP 데이터그램을 내부 네트워크로 전달합니다.
4.5 ARP 프로토콜 및 RARP 프로토콜
주소 확인 프로토콜 ARP(주소 확인 프로토콜): 네트워크 카드(네트워크 어댑터)의 IP 주소에서 해당 하드웨어 주소로 동적 매핑을 제공합니다. . 네트워크 계층 32비트 주소는 데이터 링크 계층 MAC 48비트 주소로 변환될 수 있습니다.
ARP는 플러그 앤 플레이 방식으로 ARP 테이블이 자동으로 생성되므로 시스템 관리자가 구성할 필요가 없습니다.
RARP(역방향 주소 확인 프로토콜) 프로토콜은 역방향 주소 확인 프로토콜을 말하며 데이터 링크 계층 MAC 48비트 주소를 네트워크 계층 32비트 주소로 변환할 수 있습니다.
4.6 ICMP 프로토콜에 대한 자세한 설명
인터넷 제어 메시지 프로토콜(Internet Control Message Protocol)은 오류 메시지나 비정상적인 상황을 보고할 수 있으며 ICMP 메시지는 IP 데이터그램에 캡슐화되어 있습니다.
ICMP 프로토콜 애플리케이션:
Ping 애플리케이션: 네트워크 오류 문제 해결
Traceroute 애플리케이션: IP 데이터그램이 네트워크에서 취하는 경로를 감지할 수 있습니다.
4.7 네트워크 계층 라우팅 개요
라우팅 알고리즘 요구 사항: 정확하고 완전하며, 계산이 최대한 단순하고, 네트워크 변경에 적응할 수 있고, 안정적입니다.
자율 시스템 AS: 관리 조직 하의 네트워크 장치 그룹을 말하며 AS의 내부 네트워크는 자율적으로 관리되며 외부 세계에 대한 하나 이상의 출입구를 제공합니다. 자율 시스템은 RIP, OSPF 등과 같은 내부 게이트웨이 프로토콜입니다. 자율 시스템 외부의 라우팅 프로토콜은 BGP와 같은 외부 게이트웨이 프로토콜입니다.
정적 라우팅: 수동 구성, 높은 난이도 및 복잡성
동적 라우팅:
링크 상태 라우팅 알고리즘 LS: 모든 이웃 경로에 정보 전송 빠른 수렴; 전역 라우팅 알고리즘. 각 라우터는 경로를 계산할 때 Dijkstra 알고리즘을 사용하여 소스에서 대상 네트워크까지의 최단 경로를 찾아야 합니다.
거리 벡터; 라우팅 알고리즘 DV: 모든 이웃 경로로의 정보 전송이 느리게 수렴되고 루프가 존재할 수 있습니다. 기본은 Bellman-Ford 방정식(줄여서 B-F 방정식)입니다.
4.8 내부 게이트웨이 라우팅 프로토콜 RIP 프로토콜
라우팅 정보 프로토콜 RIP(Routing Information Protocol) 애플리케이션 계층, 거리 벡터 기반 라우팅 알고리즘, 소규모 AS(자율 시스템), RIP 메시지는 UDP 데이터 보고서에 캡슐화됩니다.
RIP 프로토콜 특성:
RIP는 경로를 측정할 때 홉 수를 사용합니다(각 라우터는 자신과 다른 라우터 사이의 거리 기록을 유지합니다). RIP 비용은 소스 라우터와 대상 서브넷 간에 정의됩니다.
RIP의 네트워크 직경은 15홉 이하로 제한됩니다.
모든 정보는 이웃과 교환됩니다. 활성 시간 30회(방송).
4.9 내부 게이트웨이 라우팅 프로토콜의 OSPF 프로토콜
개방형 최단 경로 우선 프로토콜 OSPF(Open Shortest Path First) 네트워크 계층, 링크 상태에 따른 라우팅 알고리즘(예: Dijkstra 알고리즘), 더 큰 -규모 AS, 대규모 네트워크에 적합하며 IP 데이터그램 전송에 직접 캡슐화됩니다.
OSPF 프로토콜의 장점:
보안;
동일한 비용으로 다양한 경로 지원
차별화된 비용 측정 지원; p >
유니캐스트 라우팅 및 멀티캐스트 라우팅을 지원합니다.
계층적 라우팅.
RIP와 OSPF 비교(라우팅 알고리즘이 성격을 결정함):
4.10 외부 게이트웨이 라우팅 프로토콜의 BGP 프로토콜
BGP(Border Gateway Protocol) Edge Gateway 프로토콜 응용 계층: AS 간에 실행되며 좋은 경로를 찾는 프로토콜입니다. 처음에는 모든 정보가 교환되고 나중에 변경된 부분만 교환되며 BGP는 TCP 세그먼트로 캡슐화됩니다.
5. 전송 계층
첫 번째 종단 간, 호스트 간 계층입니다. 전송 계층은 상위 계층 데이터를 분할하고 종단 간, 신뢰할 수 있는 또는 신뢰할 수 없는 전송을 제공하는 역할을 합니다. 또한 전송 계층은 엔드투엔드 오류 제어 및 흐름 제어 문제도 처리합니다.
전송 계층의 임무는 통신 서브넷의 특성에 따라 네트워크 자원을 최적으로 활용하고, 양단의 세션 계층 간의 전송 연결을 설정, 유지 및 취소하는 기능을 제공하는 것입니다. 시스템은 끝까지 안정적인 데이터 전송을 담당합니다. 이 계층에서는 정보 전송을 위한 프로토콜 데이터 단위를 세그먼트 또는 메시지라고 합니다.
네트워크 계층은 네트워크 주소에 따라 소스 노드에서 보낸 데이터 패킷만 대상 노드로 전송하는 반면, 전송 계층은 해당 포트로 데이터를 안정적으로 전송하는 역할을 담당합니다.
네트워크 계층에 대한 주요 사항:
전송 계층은 상위 계층 데이터를 분할하고 종단 간, 신뢰할 수 있는 또는 신뢰할 수 없는 전송 및 종단 간 전송을 제공하는 역할을 담당합니다. 최종 오류 제어 및 흐름 제어 질문;
포함된 주요 프로토콜: TCP 프로토콜(전송 제어 프로토콜, 전송 제어 프로토콜), UDP 프로토콜(사용자 데이터그램 프로토콜, 사용자 데이터그램 프로토콜);
중요한 장비: 게이트웨이 .
5.1 UDP 프로토콜에 대한 자세한 설명
UDP(User Datagram Protocol: 사용자 데이터그램 프로토콜)는 매우 간단한 프로토콜입니다.
UDP 프로토콜의 특징:
UDP는 연결 없는 프로토콜입니다.
UDP는 안정적인 데이터 전달을 보장할 수 없습니다. 메시지 전송;
UDP에는 정체 제어 기능이 없습니다.
UDP 헤더 오버헤드가 매우 작습니다.
UDP 데이터그램 구조:
헤더: 8B, 4개 필드/2B 소스 포트 | UDP 길이 | UDP 길이 | 애플리케이션 데이터
5.2 상세 TCP 프로토콜 설명
TCP(Transmission Control Protocol: 전송 제어 프로토콜)는 컴퓨터 네트워크에서 매우 복잡한 프로토콜입니다.
TCP 프로토콜의 기능:
애플리케이션 계층 메시지를 분할하고 재조립합니다.
애플리케이션 계층에 대한 다중화 및 분해를 구현합니다. 엔드-투-엔드 흐름 제어 구현,
전송 계층 주소 지정,
수신된 패킷 및 데이터 부분의 오류 감지
프로세스 간 안정적인 엔드투엔드 데이터 전송 제어를 실현합니다.
TCP 프로토콜의 특성:
TCP는 연결 지향 프로토콜입니다.
TCP는 바이트 스트림 지향 프로토콜입니다. > TCP 연결에는 두 가지 끝이 있습니다. 즉, 지점 간 통신입니다.
TCP는 안정적인 전송 서비스를 제공합니다.
TCP 프로토콜은 전이중 통신을 제공합니다. 일대일이어야 함) ;
5.2.1 TCP 세그먼트 구조:
최대 세그먼트 길이: 세그먼트에 캡슐화된 애플리케이션 계층 데이터의 최대 길이.
TCP 헤더:
시퀀스 번호 필드: TCP의 시퀀스 번호는 각 애플리케이션 계층 데이터의 각 바이트에 번호를 지정하는 것입니다.
확인 시퀀스 번호 필드: 바이트에서 예상됩니다. 상대방이 수신한 데이터의 시퀀스 번호, 즉 이 시퀀스 번호에 해당하는 바이트가 아직 수신되지 않았습니다. ack_seq로 식별;
TCP 세그먼트 헤더의 최소 길이는 20B이고 최대 길이는 60바이트입니다. 단, 길이는 4B의 정수배여야 합니다.
TCP 마커의 역할:
5.3 안정적인 전송의 기본 원칙
기본 원칙:
신뢰할 수 없는 전송 채널에서 데이터를 전송하는 동안 발생할 수 있는 상황: 비트 오류, 순서가 잘못됨, 재전송, 손실
신뢰할 수 없는 채널을 기반으로 안정적인 데이터 전송을 달성하기 위해 취해진 조치:
오류 감지: 코딩을 사용하여 데이터 패킷 전송 중 비트 오류를 감지합니다. 확인: 수신 방향이 수신 상태를 송신자에게 피드백합니다. 재전송: 송신자는 수신자가 올바르게 수신하지 못한 데이터 시퀀스 번호를 재전송합니다. 순서대로 제출됨 타이머: 데이터 손실 문제 해결;
중지 및 대기 프로토콜: 가장 간단하고 신뢰할 수 있는 전송 프로토콜이지만 채널 활용률은 높지 않습니다.
연속 ARQ(Automatic Repeat reQuest) 프로토콜: 슬라이딩 윈도우 + 누적 승인으로 채널 활용도가 크게 향상됩니다.
5.3.1 TCP 프로토콜의 안정적인 전송
지속적인 ARQ 프로토콜을 기반으로 경우에 따라 재전송 효율성이 높지 않으며 성공적으로 수신된 일부 바이트는 반복적으로 전송됩니다.
5.3.2 TCP 프로토콜 흐름 제어
흐름 제어: 송신자가 너무 빠르게 전송하지 않도록 합니다. TCP 프로토콜은 흐름 제어를 달성하기 위해 슬라이딩 창을 사용합니다.
5.4 TCP 프로토콜의 혼잡 제어
혼잡 제어와 흐름 제어의 차이점: 흐름 제어는 지점 간 트래픽 제어를 고려하는 반면, 혼잡 제어는 전체 네트워크 및 흐름 제어를 고려합니다. 글로벌 고려 사항입니다. 혼잡 제어 방식: 느린 시작 알고리즘 + 혼잡 회피 알고리즘.
느린 시작 및 혼잡 회피:
느린 시작 혼잡 창은 1부터 기하급수적으로 증가합니다.
임계값에 도달하면 혼잡 회피에 진입하고 +가 됩니다. 1 증가;
시간 초과 후 임계값은 현재 cwnd의 절반이 됩니다(<2일 수 없음).
천천히 다시 시작하면 혼잡 창이 1부터 기하급수적으로 늘어납니다.
빠른 재전송 및 빠른 복구:
발신자는 3개의 연속 중복 ACK를 수신하고 타이머가 만료될 때까지 기다리지 않고 빠른 재전송을 수행합니다.
빠른 복구를 수행하려면 , 임계값은 현재 cwnd의 절반이 되며(<2일 수 없음) 이 새로운 ssthresh 지점에서 혼잡 회피가 입력됩니다.
5.5 TCP 연결의 3방향 핸드셰이크(중요)
TCP 3방향 핸드셰이크 사용법:
인터뷰 단골: 3방향 핸드셰이크는 왜 하는가? 필요해?
첫 번째 핸드셰이크: 클라이언트가 요청을 보내고 서버는 클라이언트가 보낼 수 있다는 것을 알고 있습니다.
두 번째 핸드셰이크: 서버가 확인을 보내고 클라이언트는 서버는 보내고 받을 수 있습니다.
세 번째 핸드셰이크: 클라이언트가 확인을 보내고 서버는 클라이언트가 이를 받을 수 있음을 알고 있습니다.
연결 설정(3방향 핸드셰이크):
첫 번째: 클라이언트가 서버에 연결 요청 세그먼트를 보내고 연결 요청 제어 세그먼트(SYN=1)를 설정합니다. , 전송된 메시지 세그먼트를 나타냅니다. 첫 번째 데이터 바이트의 시퀀스 번호는 x이고, 이 시퀀스 번호는 전체 메시지 세그먼트의 시퀀스 번호를 나타냅니다(seq=x). 클라이언트는 SYN_SEND(동기 전송 상태)에 들어갑니다.
두 번째: 서버는 새로운 연결 설정에 동의하고(SYN=1) 시퀀스 번호 필드가 유효한지(ACK=1) 확인하는 확인 세그먼트를 다시 보냅니다. 세그먼트 시퀀스 번호는 y(seq=y)이며, 이는 서버가 일련 번호
가 포함된 클라이언트의 메시지 세그먼트를 수신했음을 나타냅니다. 세 번째: 클라이언트는 서버에 대한 동일한 연결을 확인합니다. 시퀀스 번호 필드가 유효한 것으로 확인됩니다. (ACK=1) 이번에는 클라이언트 메시지 세그먼트의 시퀀스 번호가 x+1(seq=x+1)입니다. 클라이언트는 서버 시퀀스 번호 y+1(ack_seq=y+1)이 있는 메시지 세그먼트를 수락할 것으로 예상합니다. ; 클라이언트가 ack를 보내면 클라이언트는 ESTABLISHED 상태에 들어가고, 서비스는 클라이언트가 보낸 ack를 받으면 세 번째로 ESTABLISHED 상태에 들어갑니다.
5.6 4 TCP 연결 웨이브(중요)
연결 해제(4 웨이브)
처음: 클라이언트에서 서버로 연결 해제 메시지 세그먼트를 보내고 보낸 사람 데이터가 전송되며 연결이 완료됩니다. 요청됩니다(FIN=1). 전송된 첫 번째 데이터 바이트의 시퀀스 번호는 x(seq=x)입니다. 클라이언트 상태는 ESTABLISHED에서 FIN_WAIT_1(종료 대기) 1 상태로 변경됩니다.
시간: 서버가 클라이언트에게 확인 세그먼트를 보내고, 확인 필드가 유효하고(ACK=1), 서버가 전송한 데이터 시퀀스 번호가 y(seq=y)이고, 서버가 고객 데이터를 수신할 것으로 예상하는 시퀀스 번호 x+1(ack_seq=x+1); 클라이언트가 ACK 세그먼트를 수신한 후 서버 상태가 ESTABLISHED에서 CLOSE_WAIT로 변경되고 FIN_WAIT_1에서 FIN_WAIT_2로 변경됩니다. : 서버는 메시지를 클라이언트에게 보냅니다. 클라이언트는 연결 해제 메시지 세그먼트를 보내고, 연결 해제를 요청하고(FIN=1), 필드 번호 세그먼트가 유효한지(ACK=1) 확인합니다. 고객 데이터 시퀀스 번호 x+1(ack_seq=x+1); 첫 번째 바이트 시퀀스 번호는 y+1(seq=y+1)이며 서버 상태는 CLOSE_WAIT에서 LAST_ACK(마지막 확인 상태)로 변경됩니다.
네 번째: 클라이언트가 서버에 확인 세그먼트를 보내고 글꼴 크기를 확인합니다. 세그먼트가 유효합니다(ACK=1). 이는 클라이언트가 전송한 데이터 시퀀스 번호가 x+1임을 의미합니다. (seq=x+1), 이는 클라이언트가 서버 데이터 시퀀스 번호 y+1+1(ack_seq=y+1+1)을 수신할 것으로 예상함을 의미합니다. 터미널 상태는 FIN_WAIT_2에서 TIME_WAIT로 들어가고 2MSL 시간을 기다립니다. CLOSED 상태로 들어갑니다. 서버가 마지막 ACK를 받은 후 LAST_ACK에서 CLOSED로 들어갑니다.
왜 2MSL을 기다려야 합니까?
마지막 메시지는 승인되지 않습니다. ;
발신자의 ACK가 수신자에게 도달할 수 있는지 확인하세요.
2MSL 내에 수신되지 않으면 수신자는 이를 다시 보냅니다.
모든 메시지가 수신되는지 확인하세요. 현재 연결이 만료되었습니다.
6. 애플리케이션 계층
운영 체제 또는 네트워크 애플리케이션이 네트워크 서비스에 액세스할 수 있는 인터페이스를 제공합니다. 애플리케이션 계층 초점:
데이터 전송의 기본 단위는 메시지입니다.
포함된 주요 프로토콜: FTP(파일 전송 프로토콜), Telnet(원격 로그인 프로토콜), DNS(도메인 이름) 해상도 프로토콜) ), SMTP(메일 전송 프로토콜), POP3 프로토콜(우체국 프로토콜), HTTP 프로토콜(하이퍼 텍스트 전송 프로토콜).
6.1 DNS에 대한 자세한 설명
DNS(Domain Name System: Domain Name System) C/S, UDP, Port 53: IP 주소가 복잡하고 기억하기 어려운 문제를 해결하고, 범위 내의 호스트에 대한 IP 주소에 대한 도메인 이름의 매핑을 자신의 관할 구역에 저장하고 완료합니다.
도메인 이름 확인 순서:
1 브라우저 캐시,
2 로컬 컴퓨터의 호스트 파일 찾기,
3 라우팅 캐시,
4. DNS 서버(로컬 도메인 이름, 최상위 도메인 이름, 루트 도메인 이름) 찾기 -> 반복 해결 및 재귀 쿼리.
IP—>DNS 서비스—>기억하기 쉬운 도메인 이름
도메인 이름은 점, 문자, 숫자로 구성되며 최상위 도메인(com)으로 구분됩니다. , cn, net, gov, org), 2차 도메인(baidu, taobao, qq, alibaba), 3차 도메인(www) (12-2-0852)
6.2 DHCP에 대한 자세한 설명 프로토콜
DHCP(Dynamic Configuration Protocol: 동적 호스트 설정 프로토콜): UDP 프로토콜을 사용하는 LAN 프로토콜이자 응용 계층 프로토콜입니다. 기능: 일시적으로 LAN에 액세스하는 사용자에게 IP 주소를 자동으로 할당합니다.
6.3 HTTP 프로토콜에 대한 자세한 설명
파일 전송 프로토콜(FTP): 제어 연결(포트 21): 제어 정보(연결, 전송 요청)를 7비트 ASCII 코드 형식으로 전송합니다. . 전체 세션 동안 계속 기다리십시오.
HTTP(HyperText Transfer Protocol) TCP, 포트 80: 브라우저가 서버에 메시지를 보내고 받기 전에 먼저 HTTP를 사용하여 TCP 연결을 설정합니다. TCP 연결 방법(HTTP 자체에는 연결이 없습니다).
HTTP 요청 메시지 방법:
GET: 지정된 페이지 정보를 요청하고 엔터티 본문을 반환합니다.
POST: 처리를 위해 지정된 리소스에 데이터를 제출합니다. 요청 ;
DELETE: 지정된 페이지를 삭제하도록 서버에 요청;
HEAD: URL로 식별된 정보의 헤더를 읽고 메시지 헤더만 반환하도록 요청;
OPETION : 일부 옵션에 대한 정보를 요청합니다.
PUT: 지정된 URL 아래에 문서를 저장합니다.
6.3.1 HTTP 작동 구조
6.3.2 HTTPS 프로토콜에 대한 자세한 설명
HTTPS(보안)는 포트 번호 443을 사용하는 보안 HTTP 프로토콜입니다. HTTP 프로토콜을 기반으로 암호화된 데이터 처리, 상대방 신원 확인, SSL 또는 TLS를 통한 데이터 무결성 보호 기능을 제공합니다.
원래 주소: /Royalic/article/details/119985591