2011-11-28 3 views
2

MSN이 SYN 패킷에 어떻게 설정되어 있는지 궁금합니다. 하나의 운영 체제에서 고정 값입니까, 아니면 동일한 운영 체제에서 값을 변경할 수 있습니까? 나는 값이 다른 운영 체제에서 다르다는 것을 알고 있습니다. 또한 하드웨어 구성과 관련된 SYN의 MSS 값은 무엇입니까? 감사합니다. .SYN 패킷에서 MSS 값이 고정되어 있습니까?

답변

0

RFC 879은 MSS가 사용되고 지정되는 방법을 설명합니다.

요약하면 MSS는 SYN 패킷을 통한 TCP 핸드 셰이크 중에 지정됩니다. 그러나이 값은 나중에 OS 자체 또는 프로토콜 옵션을 설정하여 변경할 수 있습니다.

setsockopt를 통해 TCP_MAXSEG 옵션을 설정할 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 현재의 기존 운영 체제 (예 : Windows, Linux)에서 MSS는 SYN 패킷으로 어떻게 설정됩니까? 한 운영 체제에서 MSS가 SYN 패킷에 수정 값으로 설정 되었습니까? – ginny

+0

MSS가 SYN 패킷의 옵션으로 설정됩니다. 다양한 OS에서 MSS의 값은 다르게 설정됩니다. 예를 들어 Windows에서는 시스템 레지스트리를 통해 전역 적으로 설정할 수 있습니다. http://www.psc.edu/networking/projects/tcptune/OStune/winxp/winxp_stepbystep.html TcpWindowSize 매개 변수를 찾습니다. Linux에서는이 매개 변수를 TCP_MAXSEG 매개 변수 (http://linux.die.net/man/7/tcp)를 통해 연결 당 설정할 수 있습니다. –

+0

답해 주셔서 감사합니다. 지금은 TCP 지문을 사용하여 OS를 감지하고 있습니다. 그것은 원격 운영 체제에서 SYN 패킷의 일부 필드를 분석합니다. 그래서 당신의 대답에서, SYN 패킷의 모든 필드 값은 하나의 OS에서 고정되어 있습니다 (그들은 하드웨어와 관련이 있습니까?). 나중에 설정하지 않으면 변경되지 않습니다. 맞습니까? – ginny

0

소켓 옵션 TCP_MAXSEG를 설정하여 tcp 세션 중에 MSS 값을 설정할 수 있습니까? 내 요구 사항은 진행중인 tcp 데이터 세션 중에 MSS 값을 편집하는 것입니다.

관련 문제