C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[26208] TCP 관련 질문 하나만 드리겠습니다.
JBMEX [edchang] 736 읽음    2016-08-26 17:27
다들 안녕하세요. 특정 분야 포럼에 올리기에는 너무 일반적이라 자유게시판에 올리게 된점 양해 부탁드립니다.
아래와 같은 tcpdump 로그가 있습니다.

17:01:36.475457 IP dev_client.46890 > dev_server.9999: Flags [P.], seq 1:101, ack 1, win 5840, length 55
17:01:36.477700 IP dev_server.9999 > dev_client.46890: Flags [P.], seq 1:130, ack 101, win 29200, length 64
17:01:36.508079 IP dev_client.46890 > dev_server.9999: Flags [.], seq 1:101, ack 1, win 64240, length 55
17:01:36.535320 IP dev_client.46890 > dev_server.9999: Flags [.], seq 1:101, ack 1, win 64240, length 55
17:01:36.568246 IP dev_client.46890 > dev_server.9999: Flags [.], seq 1:101, ack 1, win 64240, length 55
17:01:36.625478 IP dev_client.46890 > dev_server.9999: Flags [.], seq 1:101, ack 1, win 64240, length 55

좀 급하게 확인해야 해서 네트워크에 정통하신 볼포회원 길길님께 시퀀스 번호의 성질에 대하여 여쭤봐서
위와 같이 동일한 시퀀스 번호로 들어오는 경우는 일반적으로 TCP retransmission인 경우라든 답변을 들었습니다.

그런데 저의 케이스를 살펴보다 좀 더 고민해야 할 부분이 발견되었는데 그리 급한 상황은 아니라서 포럼에 계신
회원님들께 여쭤보려고 합니다. 통신 인프라도 아주 정말 매우 양호한데 어떠한 상황에서도 항상 저렇게 다섯개의
메시지가 들어오는 경우라면 코딩을 희안하게 해서 저런 일이 발생했을 가능성은 없을까요?

위의 로그를 보면 서버가 55바이트를 수신하고 바로 64바이트를 응답으로 송신하는데 그 뒤로 동일한 요청메시지가
줄줄이 4번 날아옵니다. 그것도 항상 매번 일정하게 재연이 됩니다. 전송 retry를 루프로 100번 돌린다고 자랑질
비슷하게 말하는 조금 똘기 충만하신 양반인데 아무리 생각해도 저의 경우는 전송 레이어의 상황때문이 아니고
뭔가 애플리케이션 레이어에서 겁나게 이기적인 코드가 들어가있지 않나하는 의심이 생깁니다.

코드로도 위의 로그에 있는 상황이 구현될 수 있습니까? 네트웍 고수님들의 가르침 부탁드립니다. 감사합니다.


.
고흥식 [revofu]   2016-09-06 15:15 X
TCP 레이어는 운영체제가 관장합니다. 어플리케이션 개발자가 TCP 에 인위적인 헤더의 플래그를 바꾸지 못합니다. 만약 그렇게 할려면 RAW SOCKET으로 직접 TCP를 구현해 처리해야만 가능합니다. 과연 TCP를 놔두고 RAW SOCKET으로 TCP를 직접 구현해 사용할 개발자가 있을지는 의문입니다.

그리고. RETRANSMISSION 생각보다 잘 일어납니다. TCP란게 특별한 방법을 사용하는게 아니라 정해진 시간을 두고 응답이 없으면 재전송이 일어나기 때문에 의외로 많이 발생합니다.

와이어샤크로 한번 모니터링 해보시는 쪽을 권합니다. 와이어샤크가 재전송이 발생하면 시각적으로 보기 쉽게 보여주니 판단하기가 수월하실 겁니다.

+ -

관련 글 리스트
26208 TCP 관련 질문 하나만 드리겠습니다. JBMEX 736 2016-08-26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.