728x90

네트워크

여러 대의 컴퓨터가 서로 통신하기 위해 연결되면 그게 바로 네트워크!

 

1) 물리 계층 

 

(무선 혹은 유선으로)연결되어 있는 A컴퓨터에서 B컴퓨터데이터를 보낸다고 하자.

 

 

 

이때, 데이터를 전기적신호 or 광신호로 바꾸어 B컴퓨터에 전달하는 물리적 기술과 장비들을 다루는 영역1계층 또는 물리 계층이라고 한다. 

 

 

2) 데이터 링크 계층

 

이렇게 다수의 컴퓨터와 연결이 되면, 서로 다른 컴퓨터들을 구분할 필요가 있다

 

그래서 모든 통신 기기들은 서로 구분할 수 있는, 겹치지 않는, 유일한 번호MAC(Media Access Control)주소를 가진다. 

 

그래서 각 기기들이 MAC 주소로 구분되고, 서로 통신할 수 있게 된다

 

그런데, 네트워크로 연결된 컴퓨터들이 많아질수록 선이 엄청 많이 필요하게 된다. 

컴퓨터가 2대라면 단 하나의 선만 필요하지만, 3대라면 3개, 4대라면 6개,,,,,,

이러한 선의 낭비를 줄이기 위해 '허브, 스위치'라는 장치가 등장했다. 

 

 

하지만 또 이렇게 스위치로 모든 컴퓨터 선들이 연결되니, 각 컴퓨터들의 데이터들이 한 곳으로 모여 충돌하면서 여러 문제가 발생한다. (ex) 순서는 어떻게 할지, 동시에 들어오는 데이터들의 충돌은 어떻게 할지 등)

 

그래서 데이터 링크 계층, 2계층에서는 이런 충돌을 피하고 어떻게 효율적으로 데이터들을 연결하여 통신을 원활하게 할지에 대한 기술과 기계들을 다루는 영역이다. 

 

3) 네트워크 계층

 

위와 같이 스위치로 연결된 ABCD 네트워크와 또 다른 스위치로 연결된 A'B'C'D' 네트워크연결하면 ABCDA'B'C'D'라는 또 하나의 네트워크가 됩니다.  

 

여기까지만 보면 괜찮지만, '같은 네트워크에 속한 모든 기기'는 모르는 컴퓨터의 이름(주소)를 알아내기 위해, 연결된(같은 네트워크에 속한) 모든(broad) 컴퓨터들에게 'x 컴퓨터 주소가 뭐야?'라는 질문을 던지는(cast), 브로드캐스팅(Broadcasting, 방송)을 합니다. 

 

그런데, 컴퓨터든 스위치든 일정 시간이 지나면 '브로드캐스팅'으로 알아낸 주소를 까먹습니다. 그래서 일정 시간마다 다시 브로드 캐스팅을 하면서 트래픽이 계속 발생하게 됩니다. 

 

전 세계 모든 컴퓨터들을 2계층의 스위치로만 구성한다면, 전 세계 모든 기기들이 같은 네트워크에 속하게 될 것이고, 같은 네트워크에 속했기 때문에 모든 컴퓨터들이 특정시간마다 브로드캐스팅을 보내면, 엄청난 트래픽에 의해 네트워크가 마비될 것입니다. 

 

그러므로 네트워크를 나눠야 합니다. 이때, 네트워크를 나눠주는 기기가 바로 라우터입니다.

 

아래와 같이 네트워크와 네트워크 사이에 끼어, 네트워크를 구분하고 또 연결해줍니다. 

 

 

또한 라우터는 다른 네트워크까지의 최단 거리를 계산해서, 목적지 네트워크까지의 최단 거리를 알고 있습니다. 

 

 

위처럼 A네트워크에 속한 컴퓨터가 F네트워크에 속한 컴퓨터와 통신하려고 할 때, 1번 노랑색 길은 라우터 1개를 거쳐가고, 2번 핑크색 길은 라우터 2개를 거쳐간다. 

 

라우터다른 네트워크까지의 최단 거리를 계산할 수 있으므로, 2번 길이 아닌 1번 길로 보내는 것이 빠르다고 판단하고, 1번 방향으로 A 네트워크의 컴퓨터 패킷(네트워크 계층에서 데이터의 단위)을 F 네트워크로 보낸다는 것이다. 

 

이런 식으로 수많은 라우터와 라우터들이 연결되어 전 세계 모든 네트워크가 연결된 것이 바로 인터네트워크(Internetwork), 인터넷이다. 

 

그런데, 라우터가 어떻게 길을 찾고, 각각의 네트워크를 구분할까? 

 

현실에서 주소를 통해 길을 찾는 것처럼, 인터넷에서의 구분을 위한 주소가 바로 IP 주소이다. 

인터넷에선 IP 주소로 모든 것이 구분되고 통신을 하기에, 인터넷을 사용하려면 반드시 IP주소를 할당받아야 한다. 

 

이렇게 '네트워크와 네트워크' 사이의 통신에서 사용되는 기술과 장비를 다루는 영역네트워크 계층, 3계층이다. 

 

그리고, 당연히 네트워크 계층에도 다른 네트워크와의 통신에서 데이터의 충돌, 혼선을 빚지 않게 해주고, 목적지까지 데이터를 잘 전달하게 해 주는 기술이 당연히 있다. 

 

컴퓨터 공학에서 이런 기술들을 주로 '프로토콜'이라고 한다. 

 

네트워크 계층인 인터넷에서 네트워크들을 구분하고, 데이터를 효율적인 형태인 '패킷'으로 나눠주는 기술을 'IP(Internet Protocol)'라고 한다. 

 

4) 전송 계층

 

네트워크를 구분하고, 데이터를 패킷으로 만드는 것은 IP로 해결이 됐지만, 수~많은 라우터들이 연결되어 있는 인터넷은 특정 네트워크까지 패킷을 보내는 방법에 엄청나게 많은 경우의 수가 있다. 

 

그러니까 패킷들이 목적지까지 나눠져서 가다가 중간에 특정 길에 문제가 생겨 끊기면 패킷이 소실되는 일도 발생한다는 것이다. 

 

그래서 기기 종류와 상관없이 네트워크에 접속한 모든 기기들에게 데이터를 안전하게 전송할 수 있는 기술이 개발되었다. 그게 바로 TCP와 UDP

 

이렇게 데이터를 어떻게 목적지까지 전송할지에 대한 기술과 장비를 다루는 영역전송 계층, 4계층이다. 

 

TCP와 UDP 및 나머지 5, 6, 7계층에 대해서도 알고 싶다면 아래 포스팅을 참고해주세요.

https://dolphinsarah.tistory.com/36

 

[네트워크] OSI 7계층(TCP/IP, TCP와 UDP 비교)

OSI 참조 모델(Open Systems Interconnection reference model) 우리가 흔히 OSI 7계층이라고 부르는 것은 사실, OSI 참조 모델이다. 국제표준화기구(ISO)에서 개발한 네트워크 모델이고, 네트워크 동작을 7계층(l..

dolphinsarah.tistory.com

 

728x90

+ Recent posts