CS/네트워크

[후니의 쉽게 쓴 네트워킹] 2장 네트워크와 케이블, 그리고 친구들

12.tka 2022. 9. 15. 13:05
728x90
LAN (Local Area Network) 이란?

 

LAN 은 Local Area Network의 약자로 Local, 즉 어느 한정된 공간에서 네트워크를 구성한다는 뜻을 가진다. 예를 들어 한 사무실에 컴퓨터가 30대 있는데, 이것들을 네트워크로 구성한다면 사무실에 LAN을 구축한다라고 말한다.

 

WAN은 Wide Area Network의 약자로서 멀리 떨어진 지역을 서로 연결하는 경우에 사용한다. 요즘은 모두 인터넷을 쓰는 세상이라 인터넷에 접속하는 것은 WAN이라고 봐야 할 것 같다.

 

이더넷 (Ethernet)

 

이더넷은 네트워킹의 한 방식이다. 즉 네트워크를 만드는 방법 중 하나라고 생각하면 된다. 이러한 이더넷 방식의 가장 큰 특징은 CSMA/CD라는 프로토콜을 사용해서 통신을 한다는 것이다.

 

네트워킹 방식은 이더넷을 포함하여 토큰링, FDDI, ATM 등 다양한 방식이 존재한다. 지금 우리나라에서 사용하고 있는 네트워킹 방식의 대부분은 이더넷 방식이다. 네트워킹 방식에 따라 랜카드를 비롯하여 구입해야 하는 네트워크 장비들이 다르다. 따라서 이더넷에 대해 어느 정도 이해하고 있어야 한다.

 

CSMA/CD는 Carrier Sense Multiple Access/Collision Detction을 줄여서 부르는 방식이다. 대충 알아서 눈치로 통신하자라고 생각하면 된다.

 

이더넷 통신 과정

  • 통신을 하고 싶은 PC나 서버는 네트워크상에 통신이 일어나고 있는지 확인한다 (캐리어를 확인한다라고도 한다. 캐리어: 네트워크상에 나타나는 신호)
  • 캐리어가 감지되면, 보낼 정보가 있어도 못 보내고 기다린다.
  • 네트워크에서 통신이 없어지면 눈치를 보다가 자기 데이터를 네트워크상에 실어서 보낸다.
    • 2개 이상의 PC나 서버가 동시에 네트워크상에 데이터를 실어 보내면 충돌이 발생했다고 한다. 충돌이 발생하면 데이터를 전송했던 PC들은 랜덤한 시간 동안 기다린 후 다시 데이터를 또 전송한다. 기다렸다가 보내도 또 충돌이 발생하면 또 기다렸다가 보낸다. 15번을 했는데도 충돌이 나면 그냥 포기한다,,

 

토큰링 (TokenRing)

 

네트워크에서 오직 한 PC, 즉 토큰을 가진 PC만이 네트워크에 데이터를 실어 보낼 수 있다. 데이터를 보내고 나면 바로 옆 PC에 토큰을 건네주게 된다. 만약 전송할 데이터가 없다면 토큰을 다시 옆 PC에 전달한다. 따라서, 토큰링에서는 당연히 충돌이 발생하지 않는다. 또 네트워크에 대한 성능을 미리 예측하기도 쉽다.

 

하지만, 내가 지금 바로 보내야 할 데이터가 있고, 다른 PC들은 보낼 데이터가 하나도 없다고 하더라도 차례가 올 때까지 계속 기다려야 된다는 단점이 존재한다.

 

1990년대 초반까지만 해도 이더넷보다 안정된 기술이라는 주장이 나오면서 토큰링 방식이 인기를 끌었지만, 그 후 이더넷의 눈부신(?) 발전으로 토큰링은 역사 속으로 사라졌다.

 

맥 어드레스 (MAC Adress)

 

MAC은 Media Access Control의 약자이다. 맥 주소는 네트워크상에서 컴퓨터를 구분해서 인식할 수 있도록 한다.

 

IP 주소와는 어떻게 다른 것일까?

IP는 컴퓨터 주소가 아니라 LAN Card(NIC, Network Interface Card)에 연결되어 있는 회선(랜선)의 주소를 말한다. (고정 x, 인터넷망 접속할 때마다 달라짐) MAC 주소는 Lan Card의 주소를 말한다. 위에서도 말했지만 네트워크 상에서 서로를 구분하기 위하여 Device 마다 할당된 물리적인 주소이다.

 

MAC 주소로만 통신하면 안될까?

모든 라우터가 모든 서버들의 MAC 주소를 가지고 있는 것은 너무나 비효율적이다. IP 주소 체계는 변경 가능하고, 라우팅 하는 데 효과적이다. 따라서, IP 주소와 MAC 주소를 함께 사용한다. (IP 주소를 MAC 주소로 바꾸는 것을 ARP: Address Resolution Protocol이라고 한다)

 

MAC 주소는 8자리마다 하이픈(-)이나 콜론(:), 점(.)으로 구분된다. 그리고 16진수로 표현한다. 맥 주소 중에서 앞쪽의 절반은 네트워크 장비를 만드는 회사 정보를 나타내고 나머지 절반은 일련번호이다.

  • 00-60-97-8F-4F-86

 

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

 

유니캐스트는 현재 네트워크상에서 가장 많이 사용되는 통신 방식이며 1대 1로 통신한다. 통신을 위해서는 출발지와 목적지의 주소가 있어야 한다.

 

어떤 PC가 유니캐스트 프레임을 뿌린다고 가정해보자. 로컬 이더넷의 기본 성격이 붙어있는 모든 PC들에게 정보를 뿌리는 Shared 방식이기 때문에 그 로컬 네트워크상에 있는 모든 PC들은 이 프레임을 받아들여서 랜카드에서 자신의 맥 어드레스와 비교한다. 그 결과 서로 다른 경우는 바로 그 프레임을 버린다. 이렇게 되면 그 PC의 CPU까지는 영향을 주지 않기 때문에 PC의 성능이 저하되는 일은 발생하지 않는다. (브로드캐스트의 경우는 PC의 성능을 저하시킨다)


브로드캐스트로컬 랜에 붙어 있는 모든 네트워크 장비들에게 보내는 통신이다. 로컬 랜이란, 라우터에 의해서 구분되는 공간, 즉 브로드캐스트 도메인이라고 하는 공간을 뜻한다. 유니캐스트와 달리 프레임을 받기 싫다고 해서 받지 않는 것이 아니라 무조건 받는다. CPU가 할 일이 늘어난다. 

 

브로드캐스트를 사용하는 경우?

처음 두 PC 간에 통신을 하는 경우 상대편의 맥 어드레스를 모른다. (IP 주소는 알 수 있다) 이 경우에 상대의 맥 주소를 알기 위해서 ARP 동작을 하고 이 ARP가 바로 브로드캐스트이다. "이 IP 주소 가진 사람이 누구야?" 하고 브로드캐스트를 보내고 그 IP 주소를 가진 사람이 "나야"하고 대답한 후 자신의 맥 주소를 보낸다. 그 외에도 라우터끼리 정보 교환, 서버들이 모든 클라이언트에게 서비스 제공 정보 알림 등 여러 경우에 사용된다.

 

멀티캐스트보내고자 하는 그룹 멤버들에게만 한 번에 보내는 통신이다. 유니캐스트처럼 여러 번 보낼 필요도 없고, 브로드캐스트처럼 받기 싫어하는 사람에게까지 보낼 필요도 없다. 그 그룹에 속해있는 사람들에게만 선택적으로, 그것도 한 번에 보낼 수 있다.라우터나 스위치에서 기능을 지원해 주어야만 멀티캐스트를 사용할 수 있다.

 

OSI 7 Layer(레이어, 계층)는 왜 만들어졌나요?

 

OSI 7 Layer는 Physical, Data Link, Network, Transport, Session, Presentation, Application로 구성되어있다. 이렇게 네트워크를 계층으로 나누면 여러 가지 장점이 있는데 여기서는 3가지만 언급하고자 한다. (각 레이어에 대한 설명은 이미 많은 자료가 있어서 생략,,)

  • 데이터의 흐름이 한눈에 보인다. (애플리케이션 계층부터 맨 마지막 피지컬 계층까지를 나누어 놓으니까 어떻게 데이터가 날아가는지 보기 쉽다.)
  • 문제를 해결하기 편리하다. (문제 하나를 7개의 작은 문제로 나눈 후 그 문제를 해결하면 훨씬 쉽다.)
  • 여러 회사 장비를 쓸 수 있다.

 

컴퓨터는 프로토콜(Protocol)로 말한다

 

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

 

TCP/IP의 마지막 P는 프로토콜을 의미한다. 네트워크에 나오는 영어 약자 중에서 뒤에 P자가 들어가는 것은 대부분 프로토콜이라고 생각하면 된다.

 

프로토콜 예시

  • IPX(Internetwork Packet eXchange)
  • TCP/IP
  • AppleTalk
728x90