[ 잡담 ]
개발에 관련된 지식만 쌓다 보니 네트워크에 대한 공부를 전혀 하지 않게 되었고 이번 토스 공채를 보면서 네트워크는 기본적으로 어느 정도 다룰 줄 알아야 한다는 사실과 네트워크 관련된 부서로 발령받을 수도 있으니 미리미리 준비해둬야겠다는 생각으로 네트워크 공부를 시작해본다.
가만히 앉아서 글을 읽고 이해하는 행위를 하는 것을 잘 못한다. 코드를 짤 때는 그 누구보다 진득하게 앉아있을 자신이 있지만 장시간 글과 마주하는 것은 자신이 없다.
개발을 하다 보면 가끔씩 네트워크 지식이 필요할 때가 있어 찾아보면 너무 어렵고 전문적으로 정리가 되어있어서 금방 포기하곤 했다. 이제 기초부터 공부를 하는 나에게 깊은 지식 따윈 없다. 조금 틀린 정보가 섞여 들어갈 수 도 있지만 쉽게 쉽게 네트워크 용어를 정리해 나가 보자.
[ 본론 ]
인터넷(InterNet)
Inter은 연결을 의미한다. 즉 Network의 연결을 의미한다.
인트라넷(IntraNet)
Intra는 내부라는 의미다. 즉 내부의 내트워크, 회사 내부 네트워크 망을 예시로 들 수 있다.
엑스트라넷(ExtraNet)
인트라넷과 비슷하지만 사내 종직원 말고도 협력 회사나 고객들도 사용할 수 있는 환경이다.
LAN(Local Area Network) and WAN(Wide Area Network)
LAN은 한정된 지역에서의 네트워크 구축, WAN은 멀리 떨어진 곳과의 네트워크 구축. 인터넷 접속은 WAN이라 할 수 있다.
이더넷(Ethernet)
네트워킹의 하나의 방식이다. 아래의 토큰링 또한 네트워킹 방식 중 하나다. 이외에 FDDI, ATM 등 다양한 방식이 존재하는 것 같다. A컴퓨터가 B컴퓨터로 데이터를 전송하는데 다른 컴퓨터들이 통신하는지 눈치를 보고 진행중인 통신이 없다면 전송하는 방식이다. 이때 C 컴퓨터가 D컴퓨터로 동시에 전송을 하게 되면 충돌이 일어나게 된다. 이런 상황을 *콜리전(Collision)이라고 한다. A컴퓨터와 C컴퓨터는 랜덤 시간 동안 대기를 하다가 다시 전송을 하게 된다.
*콜리전(Collision)
토큰링(TokenRing)
수건 돌리기 놀이를 하듯이 컴퓨터들끼리 토큰을 돌린다. 토큰을 가지고 있는 컴퓨터만 데이터를 전송할 수 있다. 보내야 하는 데이터가 있더라도 보낼 데이터가 없는 컴퓨터에게 토큰이 돌아가는 걸 기다려야 하는 단점이 있다.
케이블
네트워크 장비와 네트워크 장비를 연결하기 위해서는 케이블이 필요하다. 광케이블, UTP케이블, 동축케이블 등 종류가 다양하다. 그 중 가장 많이 사용하는 케이블이 UTP케이블이다. TP(Twisted-pair) 즉 꼬여있다는 말이다. UTP와 STP가 있는데 U(Unshileled) 감싸져 있지 않은 케이블 S(Shieled) 절연체로 감싸져있는 케이블을 말한다.
MAC(Media Access Control) Address
네트워크상에서 서로서로 구분하기 위한 하드웨어 주소. IP주소만 있으면 모든 통신이 일어날 것 같지만 IP Address를 MAC Address로 바꾸는 절차, 즉 *ARP가 존재한다. MAC Address는 8자리마다 하이픈(-), 콜론(:), 점(.)으로 구분되어 진다. 예를들어 00-06-97-8F-4F-86처럼 나타나고 00-06-97는 생성자 코드(*OUI)다.
*ARP(Address Resolution Protocol)
*OUI(Organizational Unique Identifier)
유니캐스트
우리가 네트워크 상에서 가장 많이 사용되는 트래픽이 유니캐스트다. 편지를 보내는 방식이라고 생각하면 된다. 받는 컴퓨터의 주소를 입력해서 내용을 담아 보낸다. 랜카드가 자신에게 온 편지가 아니라는 것을 주소를 보고 파악하고 프레임을 버려버리기 때문에 CPU에게 영향을 주지 않는다.
브로드캐스트
주변 모든 네트워크 장비들에게 보내는 통신 방식. 받기 싫어하는 장비들도 받을 수 밖에 없기 때문에 브로드캐스트 방식으로 주된 통신을 이루게 되면 주변 PC들의 CPU 성능을 저하시킨다. 앞서 말한 APR 또한 브로드캐스트 방식이다.
멀티캐스트
200명의 사용자가 있는 네트워크에서 150에게 정보를 보내야한다. 유니캐스트를 사용했을 때 150번이나 반복해서 요청을 보내야한다. 같은 데이터를 150버이나 반복되어 보내지기 때문에 트래픽을 가중시킨다. 브로드캐스트를 사용했을 때 받지 않아도 되는 50명의 CPU의 성능을 하락시키게 된다. 이 두가지의 문제점을 해결 할 수 있는 통신방식이 멀티캐스트이다.
update 2020.08.30