2017-11-15 26 views
0

저는 POX와 처음으로 작업하고 있습니다. 내가 뭘 하려는지는 스위치에 규칙을 설치하여 원래 보낸 패킷을이 스위치에 연결된 호스트로 전달하는 것입니다.모든 스위치와 모든 호스트의 목록을 얻는 방법은 무엇입니까?

H1 --- S1 S2 ---- --- H3

  |---H4 

예 : H1은 그들이 컨트롤러에 전달할 수있다 (S2)에 도착할 때 H3 및 H4로 특정 패킷을 전송할 . 컨트롤러를 시작할 때 이러한 규칙을 설치하는 것이지만 스위치를 호스트에 연결해야 할 필요가 있다는 것을 명심해야합니다.

주어진 스위치에 연결된 호스트를 알 수있는 방법이 있습니까?

답변

0

처음에는 Daniel에게 mininet에 대한 몇 가지 예 (예 : youtube)를 확인한 다음 pox 및 컨트롤러에 대해 알아야합니다. h1에서 h3으로가는 첫 번째 ping은 h1에서 s1로 이동 한 다음 s1은 컨트롤러에 라우팅 흐름을 묻습니다. 그런 다음 컨트롤러는 s1에 해당 라우팅 플로 (제어기 논리에 따라 다름)로 응답하고 s1은 라우팅 플로우를 "라우팅 플로우 테이블"에 기록합니다. 그러면 s1은 패킷을 s2로 보낸 다음 s2에서 h3으로합니다. 그래서 다음 핑은 첫 번째 핑보다 빠릅니다. h1에서 h4 로의 핑은 위의 절차를 따릅니다.

스위치에 규칙을 설치하려면 스위치 유형에 따라 다릅니다. 일반적인 생각은 python 스크립트로 미리 설정하거나, mininet cli의 명령을 구문 분석하거나 스위치의 xterm이나 컨트롤러 (컨트롤러에 따라 다름)를 통해 REST API를 통해 구문 분석하는 것입니다.

+0

예, 작동 방식을 알고 있습니다. 컨트롤러를 미니 넷 토폴로지에 연결할 때 사전에 스위치를 설치하기 위해 주어진 스위치에 어떤 호스트가 연결되어 있는지 알 수있는 방법이 있는지 알고 싶습니다. –

+0

https://ervikrant06.wordpress.com/2015/09/17/learning-ovs-open-vswitch-using-mininet-part-1/ 또는 http://www.opencloudblog.com/?p=130 위의 링크에서 유용한 정보를 찾을 수 있지만 아직 테스트하지 않았습니다. 그렇지 않으면 스위치에서 xterm을 시도하십시오. – dside

0

좋아요. 토폴로지를 발견 할 수있는 많은 방법이 있으며 자신 만의 방법을 만들 수도 있습니다. 토폴로지 검색 및 관리는 SDN에서 매우 중요한 주제입니다.

가장 일반적인 방법은 모든 스위치 포트를 통해 LLDP (Link Layer Discovery Protocol) 및 BDDP (Broadcast Domain Discovery Protocol) 패킷을 사용하는 것입니다. (홍수) 여기

는 데 도움이

Discovery in Software Defined Networks

희망에 대한 링크입니다!