WinPcap을 사용하여 일련의 사용자 지정 UDP 패킷을 만들어 이더넷 계층에 주입했습니다.어떻게 전체 대역폭을 사용합니까?
각 패킷은 1000 패킷, 1440 바이트를 보냈습니다. 100 Mbps 대역폭의 경우 2.1 초 걸립니다.
전체 대역폭을 어떻게 사용합니까?
WinPcap을 사용하여 일련의 사용자 지정 UDP 패킷을 만들어 이더넷 계층에 주입했습니다.어떻게 전체 대역폭을 사용합니까?
각 패킷은 1000 패킷, 1440 바이트를 보냈습니다. 100 Mbps 대역폭의 경우 2.1 초 걸립니다.
전체 대역폭을 어떻게 사용합니까?
귀하의 처리량은 10 메가 비트 연결과 정확히 일치하는 것으로 보입니다. 물론 10mbit는 어디에도 관여되어 있지 않습니까?
원래 질문을 잘못 읽고 this의 중복이라고 생각했습니다. 그러나 100Mbps는 완전히 다른 것입니다.
매우 겸손한 하드웨어라도 문제없이 100Mbps 연결을 포화시킬 수 있어야합니다. 특히 1440 바이트 UDP 패킷을 사용하는 경우 특히 그렇습니다.
krosenvold에서 제안한 것처럼 수치는 100Mbps가 아닌 10Mbps 연결처럼 의심스러워 보입니다. 나는 그들이 100Mbps에 있다는 것을 확신하기 위해 모든 링크를 끝에서 끝까지 점검 할 것입니다. 해당 체인의 모든 10Mbps 링크가 문제가 될 것입니다.
사용중인 장비에 따라 링크 자동 협상에 문제가 있음을 발견 할 수 있습니다. 일부 장비는 악명이 높으므로 자동 교섭을 해제하고 링크 속도를 100Mbps로 설정하여 더 나은 결과를 얻을 수 있습니다.
그리고 사용중인 pcap 파일을 가지고 있으므로 속도 테스트를 수행하기 위해 tcpreplay을 사용해 보시기 바랍니다. 가능한 가장 빠른 속도로 파일을 재생하기 위해 tcpreplay가 제공하는 몇 가지 옵션이 있습니다. (특히, this 위키 항목을보십시오)
그 결과가 현재보고있는 것보다 다른 경우 pcap 파일의 문제점을 지적 할 수 있습니다. 예를 들어, pcap 파일에는 파일을 재생할 때 사용할 수있는 타이밍 정보가 들어 있습니다. pcap 파일의 타이밍을 10Mbps 네트워크에서 가져온 경우 (예를 들어) 실시간으로 재생하면 현재보고있는 결과를 얻을 수 있습니다.
데이터 교환 경로의 모든 장치와 매체가 100mbps에서 작동하는지 확인하십시오. 연결은 가장 약한 링크만큼 빠릅니다. 또한 모든 장치 (네트워크 카드 포함)가 Full-Duplex 모드로 작동하는지 확인하십시오.
전송 중에 CPU 사용은 어떻게됩니까?
병목 현상을 찾아야합니다. NIC/네트워크 또는 CPU가 될 수 있습니다. 각 패킷에 대해 NIC를 "여는"것이 아닌지 확인하십시오.
잘못된 :
loop{
OpenDevice
SendPacket
}
좋은 :
OpenDevice
loop{
SendPacket
}
나중에 당신입니다 kalmi 은 단일 패킷에 여러 개의 프레임을 시도하라고 말하고있다 권리? – krishnakumar
음 ... 그 말이별로 의미가 없을 것입니다 ... 패킷이 충분히 큽니다 ... 코드를 좀 보여 주시겠습니까? 우리는 아직 어떤 언어를 사용하고 있는지 알지 못합니다 ... 또는 어떤 API를 사용하고 있습니까? –
안녕하세요 kalmi 내 메일 주소는 내 코드를 보냅니다. 이 경우 – krishnakumar