[Physical Layer] Wireless Channel
·
CS/Computer Network
주파수 대역폭\(R = W log_2(1+SNR)\)R : data rateW : 주파수 대역폭  T = 0.1초 라는 것은 1초에 10symbol = 20bits 가 전송된다는 것이다 (QPSK 기준)T= 0.01초라는 것은 1초에 100symbol = 200bits가 전송되느다는 것이다.1/T가 주파수 대역이 된다.  의미S1과 S2의 대역폭이 100Hz라는 것을 의미한다. 국가에서 기업에서 돈을 받고 주파수 대역폭을 할당해준다. 이와 같이 되어있다면, SKT에서는 10^5의 단말기가 사용할 수 있는 것이다위에는 주파수 s1, 아래는 주파수 s2를 사용한다고 하자 ( 대역폭이 100hz)위에 사람이 받은 수신된 신호는 (s2가 없다면) r = S1 + N이다. r = s1+s2 + N인데, s2가 필..
[Physical Layer] 통신 시스템 & SNR
·
CS/Computer Network
통신 시스템Bit Source모든 신호는 bit stream으로 표현한다.4 x 4로 표현된 이미지가 있다고 생각해보자16 pixels x 8 = 128 bits가 된다 Symbol mapppingbitsteam을 symbol로 매핑한다.j는 복소수이고s1 = 1+j (00)s2 = 1-j (01)s3 = -1-j (10)s4 = 1-j(11)과 같이, 위상 변화를 90씩 주어 4개 종류의 디지털 심볼로 전송하는 4진 PSK 방식이다그에 따라 128bit는 64 symbol이 된다 noise채널에서 신호 전송 중 외부 요인에 의해 신호에 추가되는 불필요한 전기신호송신단에서 수신단으로 전달할 때신호 감세fadingnoise효과가 발생함 전자 회로에서 random motion(noise)가 발생한다. (-2..
[Link Layer] MAC protocols
·
CS/Computer Network
Media Access Control (MAC)two types of link - point to point- broad cast (shared wired or wireless link) - 대부분 MAC protocolschannel partitioning : TDMA(time), FDMA(frequency)Random Access : Allow collisionsOFDMA (LTE/5G)다른 시간대, 다른 주파수를 사용하기 때문에 서로 소통에 지장이 가지 않는다 TDMA는 시간만, FDMA는 주파수만 분할한 것이다결국 핵심은 user들이 충돌이 되지 않도록 서로 다른 주파수 자원을 할당하는 것이다 OFDMA에서는 현재 분할된 곳에서 single user가 해당 부분을 사용할 수 있다.random ac..
[Link Layer] Error Detection & Correction
·
CS/Computer Network
Reliable data Transferflow control : dst에서 데이터를 처리하는 속도보다 src가 더 빨리 보내지 않도록 하는 것error control error detection : retransmission 요구(ARQ) -> 패킷에서 한 비트만 에러가 발생하더라도 다 버리게 되어있음error correction : 문제가 있는 비트를 맞게 바꿔줌 (Forward Error Correction)feed back feed forwardfeed back 시스템은 다시 보낸 시도가 어떠한 시스템에 영향을 미치는데feed forward는 정방향으로만 흐름이 흐른다. 즉, 다시 되돌아가서 영향을 미치지 않음 ex)12개의 비트로 이루어진 패킷이 있다고 가정해보자101101011011에러가 발..
[Network Layer] Routing Algorithm
·
CS/Computer Network
Routing AlgorithmRouting Algorithm : 루트를 결정하는 알고리즘 (Host-to-Host) & algorithm that finds that least cost path Graph G = (N, E)N = set of Nodes (ROUTER)E = set of Links Cost = 여러 상황을 고려하여 링크에 부여되는 값으로, 한 라우터에 많은 부담이 생기면 바뀔 수 있음cost는 물리적인 거리만 고려한 것은 아니다 라우터를 거치지 않는 것이 더 적은 cost가 드는 것은 아니다.파란색은 cost가 5, 빨간색은 cost가 4이기 때문에 결국 빨간 경로가 cost가 더 작다. c(x,y) or \(C_{xy}\) : 둘 다 x,y의 cost를 나타낸다.If (x,y) \(\..
[Network Layer] IP addressing
·
CS/Computer Network
인터넷 : TCP / IP를 사용하는데 이는 transport layer / network layer이다.IP addressing32-bit identifier for host and router interface8bit.8bit.8bit.8bit로 나타내며 .을 통해 구분됨router의 각 port들의 ip address들을 표현했고, 그 밖은 host들의 ip address이다. 왼쪽 세개의 호스트와 라우터 인터페이스는 233.1.1.xxx 형식의 IP 주소를 가진다.4개의 인터페이스가 중계하는 라우터 없이, 하나의 네트워크에 연결되어있는 것이다. (LAN or AP로 연결)세 호스트들의 인터페이스와 하나의 라우터 인터페이스가 subnet을 구성하는 것이다.따라서 233.1.1은 subnet 구분을 ..
[Network Layer] Routing
·
CS/Computer Network
Network layer : 어떤 router을 거쳐서 client2로 패킷을 전송할지 결정하는 역할Two types of servicesConnectionless : 목적지만 지정되어 있음Connection-oriendted : 중간에 어떤 라우터를 거쳐 도착할 지 헤더에 저장되어 있다.Forwarding : Move pkt from router's input to appropriate router output (라우터로 들어와서 어디 subnet으로 보낼지 결정하는 것)Routing : Determine route token by pkt from source to dst (Fowarding 보다 큰 개념)Routing algorithm은 Fowarding table을 만들어준다.  Implementa..
[Transport Layer] TCP
·
CS/Computer Network
Data Transfer간단한 버전으로 TCP에 대해 설명하겠다. * TCP는 비교적 간단한 protocol이다. (GBN과 SN의 결합형태)Data received from Application Layer → encapsulate : in a segment, allocate SN, start timer, pass to the network layer▷ 데이터 수신 (응용계층 → 전송계층) : 애플리케이션 계층에서 데이터를 수신하여 TCP 세그먼트로 캡슐화한다. 이 과정에서 각 세그먼트에 SN을 할당하고, 타이머를 설정한다. 이후, 캡슐화된 세그먼트를 네트워크 계층으로 전달한다.Timer time-out : restransmit the segment, restart timer▷ 세그먼트가 전송된 후 일정..
[Transport Layer] 신뢰적인 데이터 전송의 원리
·
CS/Computer Network
신뢰적인 데이터 전송을 구현하는 문제는 전송 계층 뿐만 아니라, 링크 계층과 애플리케이션 계층에서도 발생하는 문제이다. Some limitations of the channel채널이 불안정한 상황들drop msgsreorder msgs deliver duplicate copies of a given msgACK가 와야 도착했다고 생각 → 늦어지면 재전송 (delay가 길었을 경우)limit msgs to finite sizedeliver msgs often an arbitary long delay 신뢰적 데이터 전송Frame FormatReciver pkt number▷ piggy-backing : for reverse direction of data flow ARQ ProtocolAutomatic Re..
[Transport Layer] UDP (User Datagram Protocol)
·
CS/Computer Network
* Demultiplexing : extend the host-to-host delivery service to a process-to-process service 호스트에서 호스트로 전송하는 것을 넘어서, 프로세스에서 프로세스로 전송하게 해주는 서비스 세그먼트 구조port # : 포트 번호 목적지 호스트가 목적지 종단 시스템에서 동작하는 (역다중화 기능을 수행하는) 정확한 프로세스에게 애플리케이션 데이터를 넘기게 해줌 * 전송 계층에서는 헤더에 포트 번호 (프로세스의 위치)를 헤더에 붙여준다. 각 port 번호를 지칭하는 길이는 16bit 이므로 \(2^{16} = 64K = 65536\) 개의 포트가 사용 가능하다. Length : 길이헤더를 포함하는 UDP 세그먼트의 길이를 바이트 단위로 나타낸다...