본문 바로가기

컴퓨터 네트워크

(30)
CH7 : WiFi (1) * 이 글에 관련된 모든 내용은 Computer Networking A Top-Down Approach 7th에서 가져온 내용이다. * Wireless LAN 기본적으로 cable을 사용하지 않기 때문에 편리하고, 이동에 용이하다. 그러나 무선으로 하다보니 여러 에러에 취약하고, bandwidth가 낮다. 또한 범위의 문제도 있을 수 있다. 가운데 있는 고깔을 기지국 (AP - Access Point)라고 표현한다. 뭐 무선의 특징은 너무 당연하기 때문에 그냥 넘어가겠다. ISM (Industaril/Scientific/Medical) bands 보통 기지국들 (KT나 SKT 등)은 정부로부터 자신들이 사용할 주파수 대역을 돈을 주고 구입한 다음에 우리에게 서비스를 한다. ISM 대역은 위처럼 정부에서 ..
CH6 : Data Link Layer (4) * 이 글에 관련된 모든 내용은 Computer Networking A Top-Down Approach 7th에서 가져온 내용이다. * Interconnecting Devices 이전 글에서도 봤지만 레이어간의 connecting 장치는 위와 같다. 여기서 스위치는 multi-port의 브릿지와 같고, 허브는 multi-port의 리피터와 같다. 이번 글에서는 각 장치에 대한 설명을 하겠다! Hub 허브는 포트가 여러개인 리피터와 같다. 리피터의 기능은 신호 증폭이다. 어떤 src에서 자기까지 신호가 왔다면 이 신호는 처음 보낼때보다 당연히 세기가 약해져있을 것이다. 이를 증폭시켜 다시 신호의 세기를 높여 다른쪽으로 넘겨주는 기능을 한다. backbone 허브는 LAN segments(빨간색 동그라미)들..
CH6 : Data Link Layer (3) * 이 글에 관련된 모든 내용은 Computer Networking A Top-Down Approach 7th에서 가져온 내용이다. * Ethernet 이더넷은 현재 유선 LAN시장에서 압도적 점유율을 보여준다. token LAN이나 ATM에 비해서 매우 간단하고, 더 가성비가 좋기 때문이다. 초창기 이더넷은 bus topology를 사용했다. 한 coxial cable을 주축으로 모든 host들이 연결되어있는 구조이다. 그러나 이 방식을 사용하면 모든 노드들이 같은 collision domain에 속하기 때문에 요즘은 star topology를 사용한다. 위처럼 node들이 하나의 swtich를 통해 공유되는 모습이다. Frame format Ethernet IEEE 802.3 Ethernet and ..
CH6 : Data Link Layer (2) * 이 글에 관련된 모든 내용은 Computer Networking A Top-Down Approach 7th에서 가져온 내용이다. * MAC Sublayer IEEE 표준에서 데이터 링크 레이어는 두개의 레이어로 나뉜다. IP주소를 담당하는 LLC와 MAC주소를 담당하는 MAC레이어 두개로 나뉘게 된다. 우리가 살펴볼 레이어는 MAC레이어이다. MAC레이어 에서는 현재 나에개 할당된 bandwidth를 여러 사용자에게 어떻게 할당해줄지에 대한 스케쥴링을 담당한다. (LTE네트워크나 5G네트워크에서도 MAC레이어에서 이 스케쥴링을 담당한다.) MAC레이어에는 여러가지의 프로토콜들이 있다. 뒤에서 차차 알아볼 것이다. 가장 이상적인 RATE분배는 모두에게 최대한 공평하게 나누어주는 것이다. R rate만큼..
CH6 : Data Link Layer (1) * 이 글에 관련된 모든 내용은 Computer Networking A Top-Down Approach 7th에서 가져온 내용이다. * 이번 챕터에서는 데이터링크 레이어에 대해서 알아보겠다. Data Link Layer 데이터 링크 레이어는 라우터간의 링크에서 작동한다. 링크들에는 여러 종류가 있다.(유선, 무선, LAN..) 이 레이어에서의 데이터는 frame단위로 부른다. 때문에 데이터 링크 레이어의 궁극적인 목표는 링크로 연결된 노드와 노드간의 프레임전달이라고 볼 수 있다. 앞서 MAC주소와 그 필요성에 대해 알아보았다. 데이터 링크 레이어에서는 이 MAC주소가 중요하다. 메시지를 실제로 어떤 host에게 보낼지 정해야 하기 때문인데, 그래서 frame의 헤더부분에 MAC주소를 넣어 보낸다. 이는 ..
패킷 전송(Packet Delivery)_ARP 그동안 패킷전송의 여러 이론적 측면을 살펴보았다. 그렇다면 패킷전송은 실제로 어떻게 이루어질까? 전송 데이터는 각 Layer를 거치며 여러 헤더가 붙는다. Layer 7부터 내려와 여러 헤더가 붙은 DataLink Layer에서의 데이터는 다음과 같다. 이때 데이터를 frame이라고 한다. Layer 2의 헤더내용에서 DA와 SA가 있는데 이는 각각 Destination Address, Source Address이다. IP Address는 부족한 IP주소체계를 해결하기 위해 서브넷 마스킹이나 여러 작업들을 거치기 때문에 전세계적으로 unique하다고 볼 수 없다. 그렇다면 이 지구에서 나만의 핸드폰을 나타내기 위해선 어떤 주소가 필요할까? 이럴때 사용하는 것이 MAC Address이다. IP 주소는 gl..
CH5 : Network Layer Control Plane (2) * 이 글에 관련된 모든 내용은 Computer Networking A Top-Down Approach 7th에서 가져온 내용이다. * 지난 강의에서는 라우팅 알고리즘들 (링크-스테이트, 벡터-디스턴스)에 대해서 알아보았다. 그러나 그 내용들은 그저 이론적인 이야기이다. 예를 들어 링크-스테이트 알고리즘에서는 모든 네트워크의 트래픽 정보를 알아야 하는데, 실제 인터넷 네트워크는 너무너무 방대하고 크다. 이전 글에서는 모든 네트워크가 flat한(계층적이 아닌)구조를 가지고 있다고 가정하고 생각했는데 위에서 말했듯이 실제 인터넷 네트워크는 매우 크기때문에 실질적으로 구현은 불가능하다. 또한 인터넷은 sub network들의 network인데 각 sub network의 관리자들은 자신의 네트워크 안에 있는 h..
TCP 소켓프로그래밍으로 웹서버 구현하기 네트워크 강의를 들으면서 배운 TCP 소켓프로그래밍을 통해 간단한 웹서버를 구현하였다. 일단 이 내용을 따라오기 위해선 소켓프로그래밍에 대한 이해가 필요한데 내 블로그에 자세한 설명이 있으므로 읽고오자! 또한 전문지식이 부족한 내가 직접 구현한 코드이므로 살짝 조잡하긴 하다. 1. 소켓프로그래밍 (1) (링크) Socket Programming (소켓 프로그래밍) (1) API API란 시스템이 어플리케이션에 제공하는 인터페이스이다. API에는 여러 종류가 있는데 우리는 TCP/IP에서 쓰이는 다양한 API중 Sokcet에 대해 알아 볼 예정이다. TCP/IP에 쓰이는 API는 Socket말고도 TL tjdahr25.tistory.com 2. 소켓프로그래밍 (2) (링크) Socket Programmin..