比如A和B两设备通信, Tcpdump中发现每次A设置PUSH标志,这个包的负荷都不是来自上层的数据。
比如如下的负荷:
<alarmNewsystemDN="MGW-202287/FUUT-OMU_0"> <eventTime>2013-02-01T05:03:29+02:00</eventTime> <specificProblem>2518</specificProblem> <alarmText>NO VALIDFALLBACK COPY FOR DEFAULT PACKAGE</alarmText> <perceivedSeverity>major</perceivedSeverity> <additionalText1>74?</additionalText1> <additionalText2></additionalText2> <eventType>processingError</eventType> <alarmId>3819</alarmId> </alarmNew>
在TCP层被分了三个包发送:
第一个TCP包负荷:
<alarmNewsystemDN="MGW-202287/FUUT-OMU_0"> <eventTime>2013-02-01T05:03:29+02:00</eventTime> <specificProblem>2518</specificProblem> <alarmText>NO VALIDFALLBACK COPY FOR DEFAULT PACKAGE</alarmText> <perceivedSeverity>major</perceivedSeverity> <additionalText1>74?</additionalText1> <additionalText2></additionalText2> <ev
第二个TCP包负荷(同时置PUSH位):
10000
第三个TCP包负荷:
entType>processingError</eventType> <alarmId>3819</alarmId> </alarmNew>
然后在TCPDUMP 抓包就变成了:
<alarmNewsystemDN="MGW-202287/FUUT-OMU_0"> <eventTime>2013-02-01T05:03:29+02:00</eventTime> <specificProblem>2518</specificProblem> <alarmText>NO VALIDFALLBACK COPY FOR DEFAULT PACKAGE</alarmText> <perceivedSeverity>major</perceivedSeverity> <additionalText1>74?</additionalText1> <additionalText2></additionalText2> <ev 10000 entType>processingError</eventType> <alarmId>3819</alarmId> </alarmNew>
求助,TCP层是否有这样的要求,PUSH置位的时候需要插入一些数据(比如这里的10000)?这些数据是用来表示什么意思的呢?
PS,B端(基于ServiceMix)能解析这样的TCP包。似乎不是乱码。
|