TCP パケットを処理しています。このアプリケーションはスニファとして機能し、SIP パケットを構築します。一部の TCP SIP パケットはフラグメント化されているため、再構築する必要があります。
私がしていることは、最初に次を使用して最初の TCP 接続を処理することです。
packet = s.recvfrom(sipLocatorConfig.NETWORK_MAX_SIZE)
その後、データを取得し、断片化されている場合は残りを取得しますが、次を使用し.recv
ます:
socket.recv(sipLocatorConfig.NETWORK_TCP_MAX_SIZE)
2 番目のフラグメントを取得すると、使用時に最初に文字化けしたデータが表示されます.recv
。これは、ETH、IP、TCP 情報であると想定しています。
M*?
M*?@{
QyE
この ETH、IP、および TCP ヘッダー情報を削除して、Packet からデータだけを抽出するにはどうすればよいですか? ありがとう