작성
·
199
1
허브 장치를 설명 해주셧을때
데이터를 보낼때 목적지를 연결된 모든 노드에게 전달하는 브로드캐스트 방식이라고 해주셧는데
강의에선 허브를 통해 데이터를 PC들에게 전달하게 되면
전달받은 PC들에 랜카드가 프레임의 헤더에 적힌 목적지 MAC주소를 자신의 MAC주소를 비교해 버리거나 받는다고 했습니다.
근데 초반 강의에서 말씀해주신
브로드캐스트는 모든 노드는 해당 데이터를 일단 받고, 랜카드가 인터럽트를 발생시켜 CPU가 이 데이터를 처리할지 말지 결정하는 방식으로 한다고 하셧습니다.
위에 허브가 전달하는 방식은
랜카드가 주소를 판단하여 버리거나 받는형식인데
그렇다면 이건 브로드캐스트 방식이아니라
유니캐스트 방식과 유사하지않나요?
이전에 네트워크 통신방식 강의에서
유니캐스트와 브로드캐스트는
유니캐스트 : 1 )목적지가 명확하게 정해져있음
2) 데이터를 받기전에 랜카드에쪽에서 먼저 확인하고(MAC주소) 데이터를 받거나 버림
브로드캐스트 : 1) 목적지가 연결된 모든 노드
2) 데이터를 일단 받고나서 CPU가 데이터를 처리할지 말지 결정함 만약 받았는데 쓸모없는 데이터일경우 CPU를 낭비하는 결과
로 알려주셧는데
저러면 허브같은경우는
유니캐스트와 브로드캐스트가 둘다 섞여있는 방식인걸까요?
내용에 혼동이 와서 글 남겨드립니다
답변 1
0
안녕하세요 dltjd503님!
강의 내용에 혼란이 있으셨군요.
강의 내용에 실수가 있었던 것 같습니다.
유니캐스트를 이용하려면 MAC 주소를 이용하기 때문에 이는 이후에 배울 스위치의 동작입니다.
허브는 MAC 주소와 관계없이 연결된 모든 기기에 브로드캐스팅만 합니다.
혼란드려서 죄송합니다. 👏
유니캐스트와 브로드캐스트 모두 이해하신게 맞습니다.
두 방식의 차이점을 보이기 위해 예시 하나를 보여드리겠습니다.
유니캐스트는 목적지 MAC 주소로 AB-CD-EF-12-34-56 로 설정해 보내고 해당 MAC 주소를 가진 컴퓨터만 메시지를 수신합니다.
반면 브로드캐스트는 목적지 주소를 FF-FF-FF-FF-FF-FF라는 약속된 주소만을 사용합니다.
주소를 이렇게 설정하고 전송하면 수신측 컴퓨터는 자신의 MAC 주소가 어떻든 이 주소는 자신에게 온 메세지로 받아들입니다. (처리할지 말지는 CPU에서 결정)
이런 이유로 허브는 MAC 주소를 구분하지 않고 FF-FF-FF-FF-FF-FF로만 보내기 때문에 1계층 장비로 구분됩니다.
안녕하세요 저도 동일한 궁금증이 발생해 댓글 남깁니다.
우선 좋은 강의를 만들어주신 감자님께 감사하다는 말씀 먼저 남기겠습니다.
설명하신 내용을 꼼꼼하게 살펴봤습니다만..
질문자분도 저와 같은 물음이 있던 것 같습니다.
질문의 요지는 PC1에서 목적지 - 주소4로 데이터를 보내려 하면
유니캐스트로 주소4를 찾는다고 하더라도 허브를 거치게 되면 전송방식이 유니캐스트 > 브로드캐스트로 변경된다고 이해하면 될까요?
만약 그렇다고 하면 수신받는 PC의 입장에서는 유니캐스트를 통해 데이터를 전달받는 것이 아니기 때문에
랜카드에서 검증이 이뤄지지 않고 인터럽트를 발생시켜 CPU의 낭비가 발생한다.
즉, 허브를 많이 사용하는 네트워크라면 브로드캐스팅이 많이 발생해 네트워크의 문제가 초래될 수 있다.
로 받아들이면 되는걸까요?
하나 더... 그저 물리신호(전기신호)를 전달만 해주는 허브가
목적지헤더(디지털데이터)를 FF:FF:FF:FF:FF:FF 로 바꿀 수 있다는 것이 이해가 되질 않습니다.
기존 지식으로는 허브는 전기적으로 모든 포트가 연결되어있기 때문에
하나의 포트로만 데이터를 (전기신호를) 전송할 수 없고 모든 포트에 전달되는 것 으로 알고있었는데..
강의를 보고 좀 헷갈리게 되었네요..
질문에 답변해주시면 감사하겠습니다 ~!
안녕하세요 YS님!
유니캐스트와 브로드캐스트에 혼란이 있으신 것 같아서 조금 더 상세하게 답변드리겠습니다!
허브는 유니캐스트, 브로드캐스트 가리지 않고 자신이 받은 데이터를 브로드캐스트 방식으로 연결된 모든 포트로 전송합니다.
만약 유니캐스트 메시지를 받아 스위치를 통과해 허브로 전달되었다면 주소가 FF:FF:FF:FF:FF:FF가 아닌 특정 MAC주소 일겁니다.
허브는 MAC주소를 참고하지 않고 이 특정 주소를 연결된 모든 포트로 전송합니다.
이를 브로드캐스트 방식으로 전송한다고 표현하지만, MAC 주소를 FF:FF:FF:FF:FF:FF를 변경하거나 다른 값으로 변경하지는 않습니다.
허브는 MAC 주소를 참고하지 않습니다.
허브가 많은 컴퓨터와 연결되면 생길 수 있는 문제는 유니캐스트 메시지를 받더라도 이 메시지를 연결된 모든 포트에 전송하는 브로드캐스트 방식을 취하기 때문에 네트워크에 부하가 커질 수 있는 것입니다.
허브가 연결된 상황에서 유니캐스트, 브로드캐스트 예시를 살펴보겠습니다.
만약 허브가 브로드캐스트 메시지를 받게 되면 허브는 애초에 브로드캐스트 방식으로 모든 포트에 뿌리기 때문에 연결된 모든 포트에 전송하게 됩니다.
(이후 CPU가 이 데이터를 처리할지, 말지 판단 후 처리하기 때문에 CPU에 부하가 있고 네트워크에 부하가 생길 수 있습니다.)
반대로 허브가 유니캐스트 메시지를 받게 되면 허브는 MAC 주소를 확인하지 않기 때문에 이 메시지가 유니캐스트인지 브로드캐스트인지 모르고 연결된 모든 포트에 전송하게 됩니다. 대신 수신하는 PC의 랜카드에서 MAC 주소를 확인해 버리게 됩니다.
(CPU에는 부하가 가지 않지만 네트워크에 부하가 생길 수 있습니다.)
반대로 허브없이 스위치에 연결된 상황에서 유니캐스트, 브로드캐스트 예시를 살펴보겠습니다.
만약 스위치가 브로드캐스트 메시지를 받는다면 연결된 모든 포트로 데이터를 전송합니다.
(이후 CPU가 이 데이터를 처리할지, 말지 판단 후 처리하기 때문에 CPU에 부하가 있고 네트워크에 부하가 생길 수 있습니다.)
반대로 스위치가 유니캐스트 메시지를 받는다면 해당 메시지에서 MAC 주소를 읽어와 해당 주소에 해당하는 포트로만 데이터를 전송합니다.
(CPU에 부하가 없고 네트워크에도 부하가 없습니다.)
허브와 스위치를 예시로 설명하면 더 잘 이해가 될 것 같아서 예시도 함께 설명드렸습니다.
궁금증이 해결되셨나요?
Flooding은 스위치에서 주소를 학습하기 위해 브로드캐스팅 하는 단계를 말해서 Flooding이라고 불러도 맥락상으로는 이해를 할 수 있지만, "브로드캐스트 방식" 혹은 "브로드캐스팅"으로 표현하는 것이 명확할 것 같습니다.
허브는 다른 동작없이 모든 포트에 받은 데이터를 뿌리기 때문에 브로드캐스트 동작과 비슷하여 "브로드캐스트 방식으로 데이터를 전송한다" 혹은 "브로드캐스팅한다" 라고 표현합니다.
브로드캐스트와 브로드캐스팅의 단어는 본질적으로는 같은 개념이지만, 사용 맥락에 따라 조금 구분됩니다.
보통 브로드캐스트는 메시지 전송 유형을 지칭할 때 사용하고
브로드캐스팅은 동작을 지칭할 때 사용합니다.
허브에서 "브로드캐스팅을 한다"라고 하면 모든 장치에 데이터를 동시에 전송하는 동작을 의미합니다!
아, 알겠습니다
브로드캐스팅과 브로드캐스트는 사용 맥락에 따라 조금은 구분된다.
강의에 이 얘기가 있었으면 빙 돌아오지 않았을 것 같아요 ㅎㅎ..
아마 질문자분께서도 이 단어 구분에 대한 개념이 없어 같은 질문을 했을거라는 생각이 드네요 ㅎㅎ..
귀한 강의 감사드리고, 더 열심히 학습하도록 하겠습니다 ~
답변 감사합니다 !
충분히 헷갈릴 수 있는 부분이라 브로드캐스트를 설명하는 강의의 수업노트에 브로드캐스트, 브로드캐스팅에 대한 내용을 추가했습니다.
더 쉽게 설명드려야 했는데 아쉬움이 남네요!
이 부분을 인지시켜주셔서 감사합니다😀
이해가 가지않아 좀더 상세하게 글 남겨드립니다
우선 그전에 제가 브로드 캐스트와 유니캐스트에 대한 정의가 맞는지 확인 부탁드립니다
유니캐스트 : 전송할 PC가 데이터에 특정목적지의 주소를 설정해서 연결된 모든 PC로 데이터를 전송하고 그리고 연결된 모든 PC는 랜카드(2계층 장비) 쪽에서 자신의 MAC주소 매칭을하고 주소가 같으면 데이터를 받고 아니면 버리는 형태로 진행
브로드캐스트 : 전송할 PC가 데이터에 목적지주소를 자신과 연결된 모든 PC로 설정하고 연결된 모든 PC로 데이터를 전송하되 여기서는 일단 먼저 데이터를 받고 CPU가 데이터를 처리할지 말지 결정하는 방식으로 쓸데없는 데이터일경우 CPU 부하 및 쓸데없는 낭비를 초래함 이렇게가
제가 알고있는 두종류에 방식인데 두종류에 내용이 맞다고 가정하면,
허브는 분명 특정 PC에 데이터를 전달할때 연결된 모든 PC로 데이터를 전송하고 2계층 장비인 랜카드가 검수를 진행하는데 위에 말씀대로라면 브로드 캐스트가 아니라 유니캐스트가 아닌가요?