네트워크 스위치를 통한 패킷 손실 시뮬레이션

네트워크 스위치를 통한 패킷 손실 시뮬레이션

여기에 네트워크 스위치가 있고 허용되는 대역폭을 제한하도록 쉽게 요청할 수 있습니다. 우리가 패킷 손실을 생성하도록 요청할 수도 있다면 좋을 것입니다. WANem을 사용하여 이 작업을 수행하는 것은 가능하지만 대기 시간이 추가되고 실시간 애플리케이션을 처리하므로 추가하는 대기 시간은 우리에게 좋지 않습니다. 이를 허용하거나 이를 수용하기 위해 해킹될 수 있는 네트워크 스위치나 라우터를 아는 사람이 있습니까?

답변1

포트나 VLAN에 속도 제한이 있는 모든 스위치에서는 패킷 손실을 "시뮬레이트"할 수 있어야 합니다. 애플리케이션에 1MB의 트래픽이 필요한 경우 제한을 그 바로 아래로 설정하면 스위치가 패킷을 삭제해야 합니다.

이 기능을 가진 모든 스위치는 제한할 수 있으려면 샘플링을 해야 한다는 점을 기억하십시오. 예: 포트 1은 1MB 제한으로 설정됩니다. 포트 1은 1초도 안 되는 시간 동안 2MB 트래픽을 전송합니다. 아마 대부분은 통과할 겁니다. 이는 스위치가 얼마나 많은 트래픽이 들어오는지 감지하고 측정할 수 있을 때까지 무엇을 삭제해야 할지 알 수 없기 때문입니다. 공급업체에 따라 이는 여러 가지 방법으로 구현될 수 있습니다. 일부는 버퍼링한 다음 버퍼에서 패킷을 삭제하고 일부는 잠시 들어오고 나가는 것을 허용한 다음 제한합니다.

귀하의 응용 프로그램이 정확히 어떻게 반응하는지 찾고 있다면 응용 프로그램을 테스트하는 컴퓨터 바로 앞에 BSD 상자를 설정하는 것이 좋습니다. BSD(방화벽에 사용하기 때문에)라는 명령이 있습니다.IPFW이를 통해 연결을 직접 제어할 수 있습니다. 따라서 다음이 현재 시나리오라고 가정해 보겠습니다.

+---------+ +---+
| 애플리케이션 서버 | ---> | 클라이언트 머신 |
+---------+ +---+

나는 이것이 지나치게 단순화된 것이라는 점을 이해하지만 이는 개념을 설명합니다. 당신이 할 수 있는 일은 중간에 NAT를 설정하고 속도 제한을 두는 것입니다.

+---------+ +------------+ +-- --------------+
| 애플리케이션 서버 | ---> | 비율 제한 상자 | ---> | 클라이언트 머신 |
| 10.0.0.5 | | 10.0.0.6 192.168.1.1 | | 192.168.1.2 |
+---------+ +------------+ +-- --------------+

다시 한번 나는 이것이 지나친 단순화라는 것을 안다. 나는 속도 제한 상자의 BSD에 어떤 명령이 있는지 보여줄 수 있도록 IP를 추가했습니다. 먼저 일반 라우터로 작동하도록 BSD를 설정하고 pf sense 등을 사용할 수 있습니다. 그런 다음 프롬프트에서 다음 명령을 추가할 수 있습니다.

ipfw 파이프 1 구성 bw 101Kbit
ipfw는 10.0.0.5에서 192.168.1.2로 1개의 파이프 1 ip를 추가합니다.
ipfw는 192.168.1.2에서 10.0.0.5로 2개의 파이프 1 IP를 추가합니다.

이는 클라이언트와 서버 간의 101kb 연결을 시뮬레이션합니다. 그런 다음 101 값을 무엇이든 변경하여 다양한 한계에서 어떤 일이 발생하는지 확인할 수 있습니다. 제한 기능을 지원하는 스위치에 비해 이것이 갖는 실제 장점은 가격이 저렴하고(두 개의 인터페이스가 있는 간단한 컴퓨터) 필요한 경우 Wireshark를 사용하여 트래픽을 캡처한 다음 정확히 무엇이 삭제되고 있는지 확인할 수 있다는 것입니다. 얼마나 많이. 이 정보는 더 나은 애플리케이션을 설계하는 데 매우 유용할 수 있습니다.

임호

관련 정보