WireShark를 사용하여 HTTP 프로토콜을 분석 한 결과, 충분히 큰 HTTP 요청이 다음과 같은 여러 TCP 패킷으로 분해된다는 것을 알았습니다. HTTP 요청 헤더를 패킷으로, HTTP 내용을 패킷으로 사용합니다.
내 질문은 : TCP 세그먼트 구분 상위 계층 프로토콜 또는 다른 방법으로 결정 있습니까?TCP 세그먼트가 어떻게 분할 되었습니까?
1
A
답변
1
+0
답변 해 주셔서 감사합니다. 귀하의 답변은 필요한 것입니다. –
0
상위 계층 프로토콜은 TCP 페이로드를 캡슐화하여 캡슐화됩니다. TCP는 다른 레벨과 마찬가지로 위의 레벨을 인식하지 못합니다. TCP 패킷의 최대 크기 (MTU : 최대 전송 단위)가 HTTP (또는 다른 상위 프로토콜)가 데이터를 전송하기 위해 더 많은 공간을 필요로 할 때 페이로드는 다른 TCP 세그먼트에서 분할됩니다.
운영 체제가 MTU 값을 수정할 수 있습니다. 리눅스와 예를 들면 : 당신은 구글이 기본적으로 자신의 HTTP 서버가 응답을 기다리지 않고 초기 세그먼트를 밀어 TCP와 상호 작용이 방법이 문서가 흥미있을 거라고 HTTP를 들어
ifconfig eth0 mtu MTU_SIZE
관련 문제
- 1. 분할 TCP 패킷 읽기
- 2. 자바 스크립트에서 문자열이 분할 되었습니까?
- 3. glCreateShader를 호출 할 때 왜이 OpenGL 셰이더 세그먼트가 잘못 되었습니까?
- 4. 어셈블러 : 32 비트 시스템에서 세그먼트가 어떻게 사용됩니까?
- 5. 아무도 두 개의 비 연속적인 TCP 세그먼트가 같은 패킷에 속하는지 어떻게 알 수 있습니까?
- 6. .Net TCP/IP 라이브러리가 개선 되었습니까?
- 7. Java TCP 클라이언트 전송이 차단 되었습니까?
- 8. URL 세그먼트가 적은 CodeIgniter
- 9. 분할 오류 - 어떻게!
- 10. TCP/IP는 어떻게 오류를보고합니까?
- 11. 분할 오류는 어떻게 발생합니까?
- 12. 분할 CRLF
- 13. Eclipse의 JSDT는 어떻게 되었습니까?
- 14. 프로세스가 어떻게 종료 되었습니까?
- 15. 혜성은 어떻게 구현 되었습니까?
- 16. Dojo DOH는 어떻게 되었습니까?
- 17. emacs의 java는 어떻게 되었습니까?
- 18. WPF에서 Control.InvokeRequired는 어떻게 되었습니까?
- 19. Project Volta는 어떻게 되었습니까?
- 20. AIM SDK는 어떻게 되었습니까?
- 21. EllipsisWord가 어떻게 적용 되었습니까?
- 22. 어떻게 개별 세그먼트가 UILongPressGestureRecognizer를 인식하도록 UISegmentedControl을 서브 클래스 화합니까?
- 23. TCP 패킷 끝을 어떻게 표시해야합니까?
- 24. python - 분할 방법은 어떻게 작동합니까?
- 25. 분할 코드
- 26. 인디 TCP 서버 - 핸들 OnDisconnect가 이미 삭제 되었습니까?
- 27. 왜 조각화가 IP에서 완료 되었습니까? TCP/UDP가 아닌 이유
- 28. 어떻게 파일을 전송하는 자바에서 TCP 서버와 TCP 클라이언트를 구현
- 29. 분할 된 컨트롤로 다른 뷰로드하기
- 30. bash에서 어떻게 구현되고 구현 되었습니까?
그것은 매우 복잡하지만, TCP 패킷 분할은 TCP 프로토콜 스택에 의해 제어됩니다. 구현하는 것은 무엇이든간에 언제 어떻게 tcp 패킷을 다음 하위 레벨 (일반적으로 IP 레이어)로 분할하고 라우팅 할지를 결정합니다. –