CS/네트워크_[교재]후니의 쉽게 쓴 네트워킹

[PART02]네트워크와 케이블, 그리고 친구들 : 07.유니캐스트, 브로드캐스트, 멀티캐스트 / 08.OSI 7 Layer는 왜 만들어졌나요? / 09.컴퓨터는 프로토콜로 말한다.

Jedy_Kim 2021. 6. 14. 01:53
728x90

07)유니캐스트, 브로드캐스트, 멀티캐스트

이 캐스트 3형제는 네트워크에서 통신을 하는 방식에 따른 구분이라고 생각하면 된다.
 유니캐스트란 특정 목적지의 주소 하나만을 가지고 통신하는 방식이다. 즉 정확하게 받는 PC의 주소를 프레임 안에 써넣는데, 이때 PC가 하나이어야 한다는 것이다.

 어떤 PC가 유니캐스트 프레임을 뿌리게 되면, 어차피 로컬 이더넷의 기본 성격이 붙어있는 모든 PC들에게 정보를 뿌리는 Shared 방식이기 때문에 그 로컬 네트워크상에 있는 모든 PC들은 일단 이 프레임을 받아들여서 랜카드에서 자신의 맥 어드레스와 비교하게 된다. 그다음 자신의 랜카드 맥 어드레스와 목적지 맥 어드레스가 서로 다른 경우는 바로 그 프레임을 버리게 된다. 이렇게 되면 그 PC의 CPU까지는 영향을 주지 않기 때문에 PC의 성능이 저하되는 일은 발생하지 않는다. 
 브로드캐스트는 한마디로 로컬 랜에 붙어 있는 모든 네트워크 장비들에게 보내는 통신이다. 통신의 대상이 특정한 어떤 한 네트워크 장비가 아니고 내가 살고 있는 네트워크 안의 모든 네트워크 장비들에 통신할 때 쓰기 위한 방식이라고 생각하면 된다. 자기가 받기 싫다고 해서 받지 않는 거시 아니라 무조건 받는 것이다.

 브로드캐스트의 주소는 미리 정해져 있는데, 바로 FFFF.FFFF.FFFF(맥 어드레스로 했을 때)이다. 이 주소가 오면 랜카드는 비록 자신의 맥 어드레스와 같지 않지만 이 브로드캐스트 패킷을 CPU에 보내게 된다. 그다음은 CPU가 이 패킷을 알아서 처리하게 된다. 따라서 과도한 브로드캐스트는 전체 네트워크의 성능뿐만아니라 PC 자체의 성능 역시 떨어뜨리는 결과를 가져온다.

그럼 브로드캐스트는 어떤 경우에 발생할까?  
 예를들어 처음 두 PC 간에 통신을 하는 경우에는 상대편의 맥 어드레스를 모른다 IP주소를 알더라도. 이 경우에 상대의 맥 어드레스를 알아내기 위해서 하는 동작이 바로 ARP(Address Resolution Protocol)이다. 이 ARP가 바로 브로드캐스트이다. 
그 외에도 라우터끼리 정보를 교환한다거나 다른 라우터를 찾을 때, 또 서버들이 자신이 어떤 서비스를 제공한다는 것을 모든 클라이언트들에게 알릴 때 등 여러 경우에 사용된다.
멀티캐스트는 보내고자 하는 그룹 멤버들에게만 한 번에 보낼 수 있기 때문에 유니캐스트처럼 여러 번 보낼 필요도 없고, 브로드캐스트처럼 받기 싫어하는 사람에게까지 보낼 필요도 없다. 그 그룹에 속해있는 사람들에게만 선택적으로, 그것도 한 번에 보낼 수 있다.  요즘은 여러 가지 애플리케이션 프로그램에 이러한 기능이 필요하기 때문에 점점 더 인기를 더해가고 있는 추세이다. 단 멀티캐스트는 라우터나 스위치에서 이 기능을 지원해 주어야만 사용할 수 있다. 만약 라우터나 스위치가 멀티캐스트를 지원하지 않는다면 라우터의 경우는 이러한 멀티캐스트를 마치 브로드캐스트처럼 취급해서 다 막아버리고(라우터는 브로드 캐스트를 막는 성질이 있다.) 스위치의 경우는 모든 포트로 뿌려버린다. 멀티캐스트는 그룹에 포함되고 또 그룹에서 빠져나가는 것을 정의하기 위해 몇 가지 기술을 사용한다. 또한 IP 주소의 경우도 클래스 D를 사용한다. 일단 이 정도만 알아두자.

 

08)OSI 7 Layer는 왜 만들어졌나요?

통신에 관한 국제표준기구인 ISO라는 곳에서
통신이 일어나는 7개의 단계로 나누어 OSI 7을 만들었다.
이는 통신을 7개의 단계별로 표준화하여 그 효율성을 높이기 위해 사용되었다.
OSI 7 계층
1.물리 계층(Physical Layer) 
2.데이터 링크(Data Link Layer) 
3.네트워크 계층(Network Layer) 
4.트랜스포트 계층(Transport Layer) 
5.세션 계층(Session Layer) 
6.프레젠테이션 계층(Presentation Layer) 
7.애플리케이션 계층(Application Layer)

 OSI 7 계층은 왜 나누었을까?
첫 번째는 데이터의 흐름이 한눈에 보인다는 것이다. 
두 번째는 문제를 해결하기가 편리하다는 것이다. 네트워크에서 문제가 발생하면 이 문제 하나를 7개의 작은 문제로 나눈 후 그 문제를 해결하면 훨씬 쉽다는 것이다.
세 번째는 이렇게 계층을 7개로 나누고 층별로 표준화를 하니깐 여러 회사 장비를 써도  네트워크가 이상이 없이 돌아가는 것이다.

레이어1 물리 계층(Physical Layer)
 여기서는 주로 전기적, 기계적, 기능적인 특성을 이용해서 통신 케이블로 데이터를 전송하게 된다. 이 계층에서 사용되는 통신 단위는 비트이며, 이것은 1과 0으로 나타내는, 즉 전기적으로 On, Off 상태라고 생각하면 된다. 
이 계층에서는 단지 데이터를 전달할 뿐 이 데이터가 무엇인지, 어떤 에러가 있는지, 어떻게 보내는 것이 더 효과적인지 하는 것은 전혀 관여하지 않는다. 이 계층에 속하는 대표적인 장비는 통신 케이블, 리피터, 허브 등이 있다.

레이어2 데이터 링크 계층(Data Link Layer)
 피지컬 레이어(물리 계층)를 통하여 송/수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행할 수 있도록 도와주는 역할을 한다. 따라서 통신에서의 오류도 찾아주고 재전송도 하는 기능을 가지고 있을 뿐만 아니라 맥 어드레스를 가지고 통신할 수 있게 해준다. 이 계층에서 전송되는 단위를 '프레임'이라고 부른다.
이 계층에 속하는 대표적인 장비에는 브릿지, 스위치 등이 있다.

레이어3 네트워크 계층(Network Layer)
 여기서 하는 가장 중요한 기능은 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 것이다. 보통 이것을 '라우팅'이라고 한다. 따라서 경로를 선택해주고, 주소를 정하며, 경로에 따라 패킷을 전달해주는 것이 이 계층의 역할이다. 라우터가 바로 이 계층에 속하는 장비이며, 요즘은 스위치 중에서도 라우팅 기능을 수행하는 스위치가 나오고 있는데, 이들 스위치를 보통 'Layer 3 스위치'라고 하는 이유도 여기에 있다.

레이어4 트랜스포트 계층(Transport Layer)
 이 계층에서는 하는 중요한 일은 주로 플로 컨트롤과 에러 복구 기능이다. 즉 에러 복구를 위해 패킷을 재전송하거나 플로를 조절해서 데이터가 정상적으로 전송될 수 있도록 하는 역할을 하는 것이다. TCP나 UDP가 이 계층에 해당된다고 기억해두면 된다.(추후 깊이 있게 다룰 것이다.)

 

09)컴퓨터는 프로토콜로 말한다.

컴퓨터끼리는 프로토콜이 서로 같은 것끼리만 통신이 가능하다.
프로토콜이란, 컴퓨터끼리 서로 통신하기 위해서 꼭 필요한 서로 간의 통신 규약 또는 통신 방식에 대한 약속으로, 프로토콜이 같은 것끼리만 대화, 즉 통신이 가능하다.

예) TCP/IP(Transmission Control Protocol/Internet Protocol)는 인터넷에서 사용하는 프로토콜이다.
IPX 프로토콜, AppleTalk 등 이 있다. 
반응형