(학교 수업 내용을 정리한 글입니다.)
Computer Network의 정의
- single technology에 의해 자발적인(autonomous) 컴퓨터들의 상호연결된 묶음이다.
- 많은 터미널이 mainframe에 연결되어 있는 것은 터미널들이 autonomous하지 않기에 Computer Network가 아니다.
- 같은 네트워크의 autonomous 기기들은 single technology로 연결되어 있기 때문에 소통이 가능하다.
분산 시스템(Distributed system)과의 차이는?
- 여기서 말하는 분산 시스템은 클라우드 컴퓨팅이나 WEB 등이 있다.
- 독립적인 컴퓨터들은 single oherent system으로 묶여 있어서 각각의 컴퓨터를 분류할 수가 없다.
- 각 컴퓨터들의 존재가 invisible, transparent하다는 점에서 computer network와는 다르다.
- 이때, transparent는 있는데 없는 것 처럼 만드는 것으로써, 없는데 있는 것으로 보여주는 virtual과 대비된다.
컴퓨터 네트워크 목적
- 기업, 가정 등에서 모두 사용되지만 결국 목적은 Resource Sharing (자원 공유, 정보 공유 등을 포함)이다.
인터넷 소프트웨어 구조 - 2가지
Client-Server 패러다임
- 전통적인 인터넷 프로그램 방식이다.
- Centralized(중앙 집권)된 자원을 공유하는데에 효과적이다.
- 서버는 DB를 소유하고, 클라이언트는 I/O를 담당한다.
- Resource를 찾기가 쉽지만 많은 사람이 몰릴 경우 Bottleneck 현상이 일어나기 쉽다.
Peer to Peer 패러다임 (P2P)
- 새로운 인터넷 프로그램 방식이다.
- Distributed된 자원을 공유하는데 효과적이다.
- 정보가 각 사용자들에게 분산되므로 각각의 프로세스들이 서버와 클라이언트로서의 역할을 수행할 수 있어 고정된 서버와 클라이언트가 없다.
- Bottleneck 현상이 일어나지 않는다. 하지만 필요한 정보를 찾을 때 오래걸린다.
Network 분류 - 4가지
- Transmission technology (전송 기술)
- Scale (크기)
- Type of media (전송 방식)
- Switching technique (전환 기술)
1. Transmission technology (전송 기술)에 따른 구분
(1) Broadcast Network
- 단일 통신채널에서 공유한다.
- Maintenance하기 쉽고, 단순하고, 저렴하다.
- 1:N 방식으로 통신한다.
- 작은 규모의 네트워크에서 적합하다.
(2) Point to Point Network
- 스위치들을 통해 기계간 연결을 지원한다.
- Maintenance가 어렵고 복잡하고 비싸지만 확장에 용이하다.
- 1:1 방식으로 통신한다.
- 큰 규모의 네트워크에서 적합하다.
2. Scale (크기)에 따른 구분
(1) PAN (Personal Area Network - 반경 1m 수준)
- 1명을 위한 네트워크이다.
- 주변 기기를 연결한다.
- 비용 절감을 위해 Master-Slave 관계를 이용한다. → 컴퓨터가 일을 시키는 Master라면 마우스는 시키는 대로 하는 Slave가 됨.
- BroadCast Network이다.
- ex. 블루투스, RFID 등
(2) LAN (Local Area Network - 반경 1m ~ 1km 수준)
- 1km 반경 수준에서 프라이빗하게 소유된 네트워크이다. 제한된 범위를 벗어나면 통신이 되지 않는다.
- 전파지연(Propagation Delay)이 있을 수 있다.
- 관리가 쉽지만 네트워크 연결은 컴퓨터 1000대 미만으로 할 수 있다.
- Master가 없기 때문에 중재 매커니즘(Arbitration Mechanism)을 이용해 다음에 무엇을 보낼지 정한다.
- BroadCast Network이다.
- ex. IEEE 802.3 (Ethernet), IEEE 802.11 (WIFI), IEEE 1394 (FireWire), Power-line networks
(3) MAN (Metropolitan Area Network - 반경 10km 수준, 도시정도의 크기)
- LAN과 같은 방식으로 동작하지 않는다. 또한, LAN은 MAN이 될 수 없다.
- 스위치를 쓰지 않지만, 성능 향상을 위해 Master와 같은 역할을 하는 것을 추가한다.
- BroadCast Network이다. (BUS 구조를 가짐)
- ex. 케이블 TV, Wireless MAN, DQDB 등
(4) WAN (Wide Area Network - 반경 100km ~ 1000km 수준, 그 이상은 The Internet)
- 국가 정도의 크기이다.
- 사이즈가 커져서 BroadCast Network를 사용하지 않는다.
- Access Network 구조(= hosts OR LAN이고, LAN으로 구현)를 포함한다.
- Core Network 구조(= Subnet)를 포함한다. (= Transmission lines + Switching element)
- Transmission lines( Circuits[전화망], channels, trunks, links )으로 signal을 전달하는 "길"의 역할을 한다.
- Switching element( packet switching nodes, routers, switches )로 Output을 결정하는데, "교차로" 역할을 한다.
- Store-and-Forward 방식 사용 : 데이터를 메모리에 저장했다가 알맞은 Output에 전달한다.
- WAN을 구축하는 3가지 방법 ... ??
- 전용선을 이용한다면 항상 빠른 속도를 보장한다.
- VPN (Virtual Private Networks) : IPsec을 설치하여 보안을 강화하였다.
- ISP (Internet Service Proivider) 또한 share line이다.
3. Type of media (전송 방식)에 따른 구분
(1) Wireless Network
- 무선이지만 느리다. 또한 오류가 많다.
- Wireless PAN : Blootooth
- Wireless LAN : WIFI
- Wireless WAN : Cellular telephones (5G)
4. Switching technique (전환 기술)에 따른 구분 ★★★
(1) Circuit Switching
- "Call 단위"로 자원을 예약한다. (End-to-End resources reserved for "call")
- 하나의 Physical Link를 여러개의 Logical Link로 나누어 공유한다.
- 한번 Call로 만들어지면 Circuit을 독점적으로 사용하기 때문에 performance가 보장되고(no sharing), 끊김이 없다.
- Link Bandwidth의 분류
- FDMA (Frequency Division Multiple Accesss) - 유선, 공간을 나누는 것과 같다.
- TDMA (Time Division Multiple Accesss) - 유선
- CDMA (Code Division Multiple Accesss) - 무선
(2) Packet Switching
- Data를 "Packet 단위"로 나누어 각 라인에 보낸다.
- 데이터를 많이 보내는 쪽이 더 많은 패킷을 사용한다.
- 각 Packet은 Full Link Bandwidth를 사용한다.
- Network Resource를 공유하고, Resource는 필요할때만 사용할 수 있다.
- 사용자가 한번에 몰리면 기다려야 한다.
① Circuit Switching VS Packet Switching 비교하기
- Circuit Switching : 효율은 떨어지고, 성능 자체는 좋다. (dedicated)
- Packet Switching : 효율적이지만 성능 자체는 좋지 않다. 더 많은 유저가 사용할 수 있다. (sharing)
상황을 하나 들어보자.
- N명의 유저, 1 Mbps Link
- 각 유저들은 1번 전송할 때마다 100 kbps가 들고, 한 유저마다 시간의 10%를 사용한다.
- Circuit Switching : 10명만 사용 가능해서 낭비가 심하다.
- Packet Switching : 더 많이 사용 가능. 만약 35명이 보낸다고 가정할 때, 10명의 사람들이 동시에 보낼 확률(0.0004)도 매우 낮다. 즉, 큐잉 지연 없이 보낼 수 있다. 이때의 수식은 다음과 같다.
- P : 사용자가 데이터를 보낼 확률
- N : 전체 사용자 수
- n : 데이터를 보내는 사람 수
- 즉, 여기서는 P가 0.1, N이 35가 되고 n은 상황에 따라 달리 넣어주면 된다.
② Packet Switching Delay 4가지 요소
- Nodal processing delay → 매우 작음
- 오류 검출 코드로 bit 에러를 체크한다.
- forwarding table을 보고 어느쪽으로 나갈지에 대한 Output link를 결정한다.
- Queueing delay → Congestion level에 비례하여 커질 수 있음.
- 같은 path를 가진 패킷들의 버퍼이다.
- 앞에 있는 패킷이 나가는 속도보다 들어오는 패킷의 속도가 빠르면 들어오는 패킷을 큐에 보관해야한다.
- 버퍼에 저장되어 전송 순서를 기다린다.
- Transmission delay
- Packet이 라우터를 빠저나가는 시간, 즉 Data(logical) → Signal(Physical) 과정을 의미한다.
- L = packet length (bits) : 패킷의 크기 (길이, 사이즈)
- R = link bandwidth (bps) : 변환속도 (스피드) → 1초동안 몇 bit를 Signal로 변환하는지 속도를 의미함
- L/R = link를 따라 bits를 보내는데에 걸리는 시간
- Propagation(전파) delay
- 다음 라우터까지 도달하는데 걸리는 시간, 즉 라우터 → 라우터 과정을 의미한다.
- d = length of phsical link : 실제 link의 물리적 길이
- s = propagation speed in medium (~2x10^8 m/sec) : 매체의 전파 속도
- d/s : Propagation delay
반응형
'CS 개념 (~24년 7월) > 네트워크' 카테고리의 다른 글
데이터 통신 정리 (3) - Internet, Mobile, Cellular, WIFI (1) | 2023.10.09 |
---|---|
데이터 통신 정리 (2) - Service, Protocol, Service의 분류(COC, CLS), OSI, TCP/IP (0) | 2023.09.28 |
OSI 7 LAYER (0) | 2022.10.23 |
TCP / UDP (0) | 2022.10.21 |