Linux 커널의 어떤 기능이 세그먼트를 생성합니까?

Linux 커널의 어떤 기능이 세그먼트를 생성합니까?

저는 석사 학위 문제를 풀고 있는데 세그먼트가 어떻게 생성되고 체크섬을 계산하는지 추적하려고 합니다. 라는 함수를 찾았 tcp_sendmsg()는데, 이름만 봐도 세그먼트를 만드는 것 이상의 역할을 하는 것처럼 들립니다. 순진할 수도 있지만 소스 및 대상 포트, 플래그 목록, 데이터에 대한 포인터를 수신하고 세그먼트를 반환하는 일반 함수라고 가정합니다. 어떤 도움이라도 대단히 감사하겠습니다.

세그먼트란 전송 계층에서 생성된 프로토콜 데이터 단위(네트워크 계층에서 생성된 패킷도 아니고 데이터 링크 계층에서 생성된 프레임도 아님)를 의미합니다.

특히 다음과 같은 코드 조각을 참조합니다(Wireshark 세션 중 하나의 스크린샷).

여기에 이미지 설명을 입력하세요.

관련 정보