HTTP 연결 및 TCP
5984 단어 http
우선 몇 개의 명 사 를 알 아 보 자 -
HTTP 연결 은 TCP 연결 을 사용 합 니 다.
내용.
1. TCP 연결
TCP, 즉 전송 제어 프로 토 콜 입 니 다. 이것 은 TCP / IP 시스템 의 프로 토 콜 중 하나 입 니 다.
TCP 는 HTTP 에 신뢰 할 수 있 는 비트 전송 파 이 프 를 제공 합 니 다. TCP 에서 한 끝 에 연 결 된 바이트 가 다른 한 끝 에서 원래 의 순서 로 정확하게 전 송 됩 니 다.
TCP 흐름 은 IP 그룹 으로 전송 되 며, IP 그룹 (또는 IP 데이터 보고) 이라는 작은 데이터 블록 을 통 해 전 송 됩 니 다.
1.1 TCP 의 연결
TCP 는 연결 을 가장 기본 적 인 추상 으로 삼 는 다.모든 TCP 에는 두 개의 단점 이 있 는데 이 연결 의 단점 을 소켓 이나 플러그 라 고 하 는데 포트 번호 가 IP 주소 에 연결 되면 소켓 을 구성한다.
socket = (IP : )
모든 TCP 연결 은 통신 양 끝 에 있 는 두 개의 점 (즉 두 개의 소켓) 에 의 해 유일 하 게 확정 된다.즉:
TCP ::={socket1:socket2} = {(IP1:port1),(IP2:port2)}
A 는 주동 적 으로 연결 을 열 었 고 B 는 수 동적 으로 연결 을 열 었 다.B 서버 가 전송 제어 모듈 TCB 를 만 든 후 LISHEN 상태 에서 클 라 이언 트 요청 을 기다 리 고 있 습 니 다.A 의 클 라 이언 트 프로 세 스 도 먼저 전송 제어 모듈 을 만 든 다음 에 b 에 요청 메 시 지 를 보 냅 니 다. 이때 첫 번 째 동기 화 비트 syn = 1 을 선택 하고 초기 화 시퀀스 번호 seq = x 를 선택 하 십시오.SYN 메시지 구간 은 데 이 터 를 휴대 할 수 없 지만 번 호 를 소모 해 야 합 니 다.B 는 연결 요청 메 시 지 를 받 고 연결 구축 에 동의 하면 A 에 게 확인 메 시 지 를 보낸다.확인 메시지 에서 SYN 비트 와 ACK 비트 를 모두 1 로 설정 하고 사람 번 호 는 ack = x + 1 이 며 자신 을 위해 초기 번호 seq = y 를 선택 합 니 다.이 메시지 단락 도 데 이 터 를 휴대 할 수 없 지만, 마찬가지 로 하나의 번 호 를 소모 해 야 한다.이때 TCP 서버 프로 세 스 가 SYN - RCVD 상태 로 들 어 갑 니 다.TCP 클 라 이언 트 프로 세 스 가 B 의 확인 을 받 은 후에 B 에 게 확인 을 해 야 합 니 다.메시지 세그먼트 의 ACK 설정 1, 확인 번호 ack = y + 1, 자신의 번호 seq = x + 1 을 확인 합 니 다.ACK 의 메시지 세그먼트 는 데 이 터 를 휴대 할 수 있 지만 데 이 터 를 휴대 하지 않 으 면 시리 얼 번 호 를 소모 하지 않 기 때문에 다음 데이터 메시지 세그먼트 의 번호 seq = x + 1. 이때 TCP 연결 이 구축 되 었 고 A 는 ESTABLISHED (연결 되 었 음) 상태 에 들 어 갔다.B 가 A 의 확인 을 받 은 후에 도 ESTABLISHED 상태 에 들 어 갔다.왜 두 번 이 아니 라 세 번 의 악 수 죠?부적 절 한 예 를 들 어 남 자 는 여자 에 게 사 귀 라 는 편 지 를 보 냈 다. 편지 가 어떤 이유 로 체류 가 지연 되 었 고 남 자 는 답장 을 기다 리 느 라 애 를 먹고 포기 하려 고 했 으 나 여 자 는 나중에 이 편 지 를 받 고 남자 에 게 사 귀 는 것 을 확인 하 는 편 지 를 보 냈 다.여기 서 악 수 를 세 번 하지 않 는 다 면 여자 가 확인 만 하면 사 귈 수 있다 는 것 을 묵인 하지만 남 자 는 대답 을 포기 하고 여 자 는 남자 가 사랑 의 편 지 를 보 내 기 를 기다 리 며 꽃 이 다 질 때 까지 기 다 렸 다.세 번 째 악 수 를 한다 면 이곳 여 자 는 남자 가 확인 요청 을 한 후에 야 사 귀 는 것 에 동의 하고 사랑 을 기다 리 지 않 는 다.
A 와 B 는 모두 ESTABLISHED 상태 에 있 습 니 다. A 의 응용 프로 세 스 는 먼저 응용 프로 세 스에 연결 을 보 내 메시지 세그먼트 를 보 내 고 데 이 터 를 보 내 는 것 을 중단 하 며 TCP 연결 을 자발적으로 닫 습 니 다.A. 메시지 세그먼트 의 첫 번 째 종료 제어 위치 1 을 연결 합 니 다. 그 번호 seq = u 는 앞에서 전 송 된 데이터 의 마지막 바이트 번호 에 1 을 추가 하 는 것 과 같 습 니 다. 이때 A 는 FIN - WAIT - 1 (종료 대기 1) 상태 에 들 어가 B 확인 을 기다 리 고 있 습 니 다.B. 연결 해제 메시지 세그먼트 를 받 은 후 즉시 확인 번 호 를 보 냅 니 다. 확인 번 호 는 ack = u + 1 입 니 다. 이 메시지 세그먼트 의 자신의 번 호 는 v 입 니 다. B 앞에서 전 송 된 데이터 의 마지막 바이트 의 시리 얼 번호 에 1 을 더 한 다음 에 B 는 CLOSE - WAIT (닫 기 대기) 상태 에 들 어 갑 니 다.B. 고 층 응용 프로 세 스 를 알 리 기 때문에 A 에서 B 까지 의 연결 이 풀 립 니 다. 이때 TCP 는 반 닫 힌 상태 입 니 다. 즉, A 는 보 낼 데이터 가 없 지만 B 가 데 이 터 를 보 내 면 A 는 받 아야 합 니 다.A 는 B 로부터 확인 을 받 고 FIN - WAIT - 2 (대기 중지 1) 상태 로 들 어가 B 가 석방 메 시 지 를 보 낼 때 까지 기다린다.B 가 A 에 게 보 낼 데이터 가 없 으 면 응용 프로 세 스 는 TCP 에 연결 을 해제 하 라 고 알 립 니 다. 이때 B 가 보 낸 연결 메시지 세그먼트 FIN = 1, 현재 B 의 번호 w (반 닫 힌 상태 에서 B 가 데 이 터 를 보 냈 을 수도 있 습 니 다), B 는 지난번 에 보 낸 확인 번호 ack = u + 1 을 반복 해 야 합 니 다. 이때 B 는 LAST - ACK (마지막 확인) 상태 에 들 어가 A 의 확인 을 기 다 려 야 합 니 다.A 는 B 의 연결 해제 메시지 세그먼트 를 받 은 후에 반드시 확인 을 보 내야 한다. 확인 메시지 에 ACK 가 1 을 설치 하고 확인 번 호 는 ack = w + 1 이 며 자신의 번 호 는 seq = u + 1 이다.그리고 TIME - WIT 상태 로 들 어 갑 니 다.이때 TCP 연결 이 풀 리 지 않 아 타이머 (TIME - WIT timer) 가 설정 한 시간 2MSL 을 기 다 려 야 A 가 CLOSED 상태 로 들 어 갑 니 다.MSL 을 최 장 메시지 세그먼트 수명 이 라 고 합 니 다.이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
빠른 팁: SingleStoreDB의 데이터 API 사용SingleStoreDB는 HTTP 연결을 통해 SQL 문을 실행하는 데 사용할 수 있는 을 제공합니다. 이 짧은 문서에서는 이 데이터 API를 사용하는 방법에 대한 예를 보여줍니다. A는 무료 SingleStore...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.