목록통신 & 네트워크 (12)
순간이 영원해 지는 곳
UDP 는 Flow Control 기능이 없기 때문에 보내는 쪽에서 전송 시작과 동시에 Physical Layer 에서 지원 가능한 최대 속도(max throughput)로 데이터를 전송할 수 있다. 반면 TCP의 경우 재전송 기능(ACK 패킷의 사용)과 Flow Control 기능(수신측에서 처리할 수 있는 속도이상으로 데이터를 보내지 않도록 조정) 때문에 전송 시작과 동시에 최대 속도로 데이터를 보낼 수 없으며, End to End 지연시간(delay)이 길면 1 session(1개의 TCP 연결)으로는 최대 속도로 데이터를 보내지 못할 수 있다. 전송 시작과 동시에 최대 속도로 데이터를 보낼 수 없는 것은, TCP가 window 라는 개념을 사용하기 때문이다. TCP는 ACK 패킷을 수신해야 그 다..
* 의문 : LTE에서 IPv4, IPv6 주소는 어떻게 할당하는가? * 자답 : LTE에서 단말(UE)이 사용할 IP 주소 할당은 PDN-GW가 결정한다. IPv4 주소의 경우 PDN-GW 에서 할당한 IP가 Serving-GW와 MME를 거쳐 단말에게 전달된다. NAS 메시지 ATTACH_ACCEPT 안에 ACTIVATE_EPS_BEEARER_CONTEXT_REQUEST 의 PDN Address Information 필드안에 IPv4 주소가 담겨 있다. 단말이 이 과정 동안 IPv4 주소를 할당 받지 못한 경우 단말은 DHCPv4를 이용하여 IP 주소 할당을 요청하여 할당 받는다. (이 경우 DHCP 서버 주소가 ATTACH ACCEPT 메시지 안에 포함되어 있다.) IPv6 주소도 IPv4 와 같이..
TCP에서 Receiver는 데이터 패킷을 잘 수신하면 Acknowledgement(ACK) 패킷을 Sender 에게 전송한다. ACK 패킷 전송 횟수를 줄이기 위해 Delayed ACK 라는 방식을 사용하는데, 아래 링크를 보면 윈도우 운영체제에서는 Delayed ACK timer(하나의 패킷을 수신하고 곧장 ACK 을 보내지 않고 다음 패킷을 기다리는 시간)는 200ms 이다. http://support.microsoft.com/kb/328890 위에 링크에는 아래와 같은 내용이 있다. RFC 1122에 지정된 대로 TCP는 지연된 응답을 사용하여 미디어의 송신 패킷 수를 줄입니다. Windows 2000 이상에서의 TCP는 수신한 각 TCP 세그먼트에 대해 응답을 보내는 대신 일반적인 방법으로 지연..
스트리밍 멀티미디어- 동영상이나 음악 따위를 전부다 다운받은 뒤에 재생 하는 것이 아니라 수신하면서 재생하는 것들- 인터넷 생중계(아프리카, 다음팟 등)- 저장된 미디어 스트리밍 서비스 (유튜브, 인터넷 음악듣기 서비스)- 실시간 멀티미디어 (인터넷전화, 화상회의) * RTP (Real-Time Transport Protocol)- 응용층의 프로토콜- Video/Audio “데이터”를 전송하기 위한 프로토콜 - 헤더에는 코덱정보, 순서번호, 타임스탬프, SSRC(Synchronization Source Identifier)양 단말간 여러 RTP 세션을 구분 - 한 웹브라우져에서 2개 동영상 재생 --> 헤더마다 코덱이 들어가므로 네트워크 상황에 따라 코덱을 바꿀 수 있다. 품질이 떨어지는 코덱- UDP/..
master mode를 지원하는 무선 랜카드가 있으면 리눅스에 hostapd를 설치하여 WiFi를 위한 AP(Access Point)를 만들 수 있다. 우분투 10-10 을 기준으로 했으나, 커널 버전(2.6.27 또는 그 이상)을 맞추고 설치해야하는 프로그램만 모두 설치하면 리눅스 종류에 상관없이 가능하다. hostapd[http://w1.fi/hostapd/] 가 지원하는 무선랜카드 드라이버는 다음과 같다. Linux mac80211 drivers Host AP driver for Prism2/2.5/3 madwifi (Atheros ar521x) BSD net80211 layer (e.g., Atheros driver) (FreeBSD 6-CURRENT) 여기서 Linux mac80211 drive..
패킷 교환망(Packet Switched Network)은 기본적으로 guranteed service가 아닌 best-effort service를 제공한다. 호스트 하나하나마다 전용선이 있는 것이 아닌 망을 여러 호스트가 공유해서 쓰기 때문이다. * Guranteed Service : 정해진 대역폭, 지연등의 서비스 품질을 보장하는 서비스 * Best-Effort Service : 최선을 다한다는 말은 성능 보장은 안 한다는 말이다. 이러한 패킷 교환망에서도 기존구조는 그대로 두면서 차별화된 서비스를 해줄 필요가 있게 되었다. * QoS(Quality of Service) : '서비스의 질'인데, QoS는 'Level of Performance'(성능의 등급)을 두어서 등급에 따라 차별화된 서비스를 제공..
여러개의 호스트가 하나의 매체/링크를 공유할때는 두 개 이상의 호스트가 동시에 링크를 사용하는 경우 전기신호의 충돌로 인하여 통신을 할 수 없게 된다. 이렇게 링크를 공유하는 경우 원할한 통신을 위해서는 서로간의 약속이 필요하게 된다. 지금은 거의 사용하지 않지만 Bus Topology형태의 네트워크나 허브를 통해 구성된 LAN의 경우가 매체를 공유하는 경우에 해당된다. 또한 전파를 사용하는 무선통신의 경우에도 매체를 공유한다고 볼 수 있다. 공유 링크에 접근하기 위한 프로토콜 중에서 Random Access(임의접근) 방식에 속하는 프로토콜에는 ALOHA, CSMA, CSMA/CD, CSMA/CA 가 있다. ※ Random Access = Contension Based Access(경쟁기반접근) Ran..
패킷의 여행이라고 하여 대단한 내용은 아니고, 내가 네트워크관련 공부를 하면서 패킷하나가 송신지부터 수신지까지 이동되는 동안 일어나는 일들에 대해 정리한 것이다. PC1(End Host) 에서 패킷이 하나 만들어 진다. PC1의 IP 주소는 192.168.0.2 이다. 패킷의 목적지 IP 주소는 192.168.0.3이다. PC1은 ARP(Address Resolution Protocol) 브로드캐스트를 통해 같은 네트워크(192.168.0.0)에 목적지 IP주소에 해당하는 호스트가 있는지 확인한다. ARP는 IP주소를 가지고 MAC 주소를 알고 싶을 때 사용되는 프로토콜이다. 호스트가 같은 네트워크 안에 존재할 경우 해당 호스트는 NIC(Network Interface Card) 또는 LAN 카드 의 M..
Go-back-N ARQ와 Selective Repeat ARQ는 모드 전송층(Transport Layer)의 프로토콜이며 이 두가지를 혼합 및 개선하여 만든 프로토콜이 TCP(Transmission Control Protocol)이다. 이 글에서 사용된 "프레임" 이라는 용어는 전송층에서 쓰이는 "패킷" 과 같은 개념이며 데이터링크층에서 사용되는 전송단위인 프레임과는 다르다. 1. 무잡음 채널에서의 프로토콜 - Simplest - Stop-and-Wait 2. 잡음이 있는 채널에서의 프로토콜 - Stop-and-Wait ARQ (파이프 라인이 1개) - Go-Back-N ARQ (파이프 라인 N개) - Selective Repeat ARQ (파이프 라인 N개) ※ ARQ(Automatic Repeat ..
라우팅과 포워딩은 네트워크 레이어(Network Layer)에서 반드시 있어야 하는 두 가지 기능이다. 이는 네트워크 레이어의 장비인 라우터(Router)가 가지고 있는 기능이기도 하다. 그런데 공부하는 교재도 그렇고 왜 그렇게 이런 개념에 대해서 알기 쉽게 설명하지는 않고 그냥 외우란 식으로 라우팅은 출발지에서 목적지까지의 경로를 결정하는 것을 말하고 포워딩은 라우터의 입력 포트에서 출력 포트로 패킷을 이동시키는 것을 말한다. 라고만 되어 있는 것일까? 사실 정확한 개념을 깨우치고 나면 저 말이 맞다는 걸 알겠지만, 모르는 사람 입장에서는 두 기능의 차이가 뭔지 헛갈릴 수도 있다. 이에 내가 이해한 대로 알기 쉽게 풀어 설명 해보려 한다!!! 위에서 말한 포워딩의 정의를 보면 입력 포트와 출력 포트란 ..
Link-State Routing Algorithm을 사용하기 위해서는 Global Information이 필요하다. Link-State Algorithm을 사용하는 라우팅 프로토콜로는 OSPF가 있다. Global Information이 필요하다는 것은 모든 라우터가 완전한 연결형태와 링크비용 정보를 알고 있어야 한다는 것이다. 다음 예를 통해 Dijkstra's Algorithm이 어떻게 최단경로를 설정하게 되는지 알아보자. * 먼저 아래 D()와 p()의 의미를 기억한다. D(v) : 노드 v로 갈수 있는 최단 경로 비용 p(v) : 노드 v로 가는 최단 경로에서 노드 v 바로 이전에 방문한 노드 노드 u(u라우터) 에서 라우팅 테이블을 작성하고자 하는 경우를 생각한다. (노드 u에서 출발) 단계 ..
OSI(Open System Interconnection) 7 Layer - 국제 표준 기구(ISO)에서 제정한 네트워크 통신 모델이다. - OSI 모델의 목적은 서로 다른 두 시스템 사이에서 시스템의 하드웨어나 소프트웨어를 수정하지 않고 상호 통신이 가능하도록 하는 것이다. 1. 물리층(Physical Layer) - 역할 : 한 노드(node)에서 다음 노드로 비트(bit)를 전달하는 층 - 인터페이스와 매체의 물리적인 특성 : 물리층은 장치와 전송매체 간의 인터페이스 특성을 규정하며, 전송매체의 유형에 대해서도 규정한다. - 데이터 속도 : 전송속도(초당 전송되는 비트의 수)도 물리층에서 규정된다. 다시 말하자면 물리층은 신호가 유지되는 비트의 주기를 규정한다. - 비트의 동기화 : 송신자와 수신자..