먼저 기능을 설명하자면
A,B,C,D 라는 장비가 있고 아래처럼 연결되어 이더넷 통신을 하는 상태입니다.
각각의 장비는 A와 연결이되면 연결된 순서대로 ID 값을 갖게됩니다.
A - B(ID:1) - C(ID:2) - D(ID:3)
위 상태에서 B가 어떤 이유로 인해 장비가 꺼진다면 B장비가 hub처럼 동작하여
A 와 C.D 장비를 이더넷 통신이 가능하도록 Bypass mode로 동작하고 C와 D의 ID값이 H/W적으로 바뀝니다.
A - B(Bypass mode) - C(ID:1) - D(ID:2)
이때 A에서는 B장비가 끊기고 C,D 장비로부터 이더넷을 통해 온다는것을 알아야하는데 어떻게 구현하면 좋을까요?
제가 생각한 한가지 방법은 A장비에 다른 장비가 연결이 된다면 MAC 정보와 ID값을 매칭시켜 저장했다가
하위 장비로부터 데이터를 받을 때 MAC정보와 ID값을 비교하여 Bypass mode로 변경됐는지 확인 하는것 입니다.