1.1 What is the Internet?
1.1.1 구성 요소로 본 인터넷 : "nuts and bolts" view
인터넷 (Internet)
- Network of Network
- 전 세계적으로 수십억 개의 컴퓨터 장치를 연결하는 컴퓨터 네트워크
- loosely hierarchical (느슨한 계층적)
- Interconnected ISPs (인터넷 계약들)
호스트(host) = 종단 시스템(end system)
- 컴퓨터 네트워크에 연결된 컴퓨팅 장치
- ex. 서버, 인터넷에 연결된 모든 인터넷 '사물들'
- 통신 링크(communucation link)와 패킷 스위치(packet switch)의 네트워크로 연결 됨
- running network apps : 망에 접속이 가능하고 메세지를 보낼 수 있어야 함
통신 링크(communication links)
- 다양한 전송률(transmission rate), 링크 대역폭(bandwidth)을 이용해 패킷(packet = 데이터)을 전송 함
- 전송률 단위 : bps (bits per second, 초당 비트 수)
- fiber(섬유), copper(구리), radio(라디오), satellite(위성) 등의 매체로 구성 됨
패킷(packet)
- 송신 종단 시스템에서 수신 종단 시스템(목적지)으로 보내짐
- 송신 종단 시스템이 보내고자 하는 데이터를 세그먼트(segment)로 나누고, 각 세그먼트에 헤더(header)를 부착하여 수신 종단 시스템으로 전송한다.
- 패킷은 목적지에서 원래의 데이터로 다시 조립된다.
패킷 교환기 (packet switch)
- 입력 통신 링크 중 하나
- forward packets : 도착하는 패킷을 받아서 출력 통신 링크의 하나로 그 패킷을 전달한다. (목적지 방향으로 패킷 전달)
- ex. switch(보통 네트워크 코어에서 사용), router(보통 네트워크에서 사용)
ISP(Internet Service Provider)
- 패킷 스위치와 통신 링크로 이루어진 네트워크
- 종단 시스템에게 다양한 네트워크 접속을 제공한다.
프로토콜(protocal)
- protocols control sending, receiving of msgs (인터넷에서 정보의 송수신을 제어한다.)
- ex. TCP, IP, HTTP, Skype, 802.11
Internets Standards
- IETF(Internet Engineering Task Force)
- 국제 인터넷 표준화 기구
- RFC(Requests for Comment) : IETF 표준 문서
- TCP, IP, HTTP, SMTP 같은 프로토콜을 정의
- IEEE 802 LAN 표준위원회
- 이더넷과 무선 와이파이 표준을 기술
1.1.2 서비스 측면에서 본 인터넷 : a service view
- coimmunication infrastructure that provides services to applications
- ex. Web, VoIP, email, games
- Provides programming interface to apps
- provides service potions analogous to postal service
- hooks that allow sending and receving app programs to "connect" to Internet
- provides service potions analogous to postal service
- reliable data delivery from source to destination
- "best effort" (unreliable) data delivery
- provides service potions analogous to postal service
✏️ Best Effort 서비스는 데이터를 전송할 때 최선의 노력을 다하지만, 특별한 보장이나 우선순위를 제공하지 않는 것을 의미합니다.
What's a protocol? 프로토콜이란 무엇인가?
둘 이상의 통신 개체(entity)가 일을 함께 수행하려면 이들이 다같이 인식하는 프로토콜, 즉 통신규약이 필요하다.
✏️ 프로토콜이란, 데이터 통신을 원활하게 하기 위해 필요한 통신 규약
- 모든 인터넷 커뮤니케이션 활동의 중심에는 프로토콜이 있다.
- protocols define format, order of messages sent and received among network entities and network entities and action taken on message transmission, receipt -> 프로토콜은 네트워크 엔터티와 네트워크 엔터티 간에 전송 및 수신되는 메시지의 형식, 순서 및 메시지 전송, 수신에 대해 수행되는 작업을 정의합니다.
human protocols
- Syntax
- semantic
- Timing
network protocols
- 통신하는 둘 이상의 원격 개체가 포함된 인터넷에서의 모든 활동은 프로토콜이 제어한다.
1.2 Network edge
A closer look at network structure
network edge
- applications and host
- 종단 시스템은 애플리케이션을 수행하므로 호스트라고도 부르며, 호스트는 클라이언트(client)와 서버(server)로 구분된다.
- host : client and server
- servers often in data centers
access networks(접속 네트워크)
- physical media: wired, wireless communication links
- 사용자가 네트워크에 연결하는 지점
- 종단 시스템을 먼 거리에 위치한 다른 종단 시스템까지의 경로 상에 있는 첫 번째 라우터, 즉 가장 자리 라우터에 연결하는 네트워크를 말함.
network core
- interconnected routers
- networkof networks
💡 "Network of networks"는 여러 개의 독립적인 네트워크가 상호 연결되어 하나의 큰 네트워크를 형성하는 개념을 나타냅니다.
The network edge:
end systems (hosts)
- run application programs
- ex. Web, email
- at "edge of network"
List the Network edge model
client/server model
- client host requests, receives service from always-on server (클라이언트 호스트 요청, 서버로부터 서비스 수신)
- ex. Web browser / Server , email client / Server
peer-peer model
- minimal (or no) use of dedicated servers (전용 서버를 최소한으로 사용하거나 사용하지 않음)
- ex. Skype, BitTorrent
특성 | client-server | "Pure" P2P | "Hybrid" P2P |
중앙 서버 | 중요한 역할을 함 | 없음 | 일부 중앙화된 요소 |
참여자 간 동등성 | 클라이언트 및 서버 | 있음 | 있음 |
데이터 검색 및 공유 | 서버를 통해 진행 | 분산 알고리즘에 의해 | 일부 중앙화된 요소 및 분산 알고리즘 혼합 |
예시 | 웹 서비스, 이메일 | BitTorrent, Gnutella | Skype(초창기 버전), 일부 블록체인 플랫폼 |
확장성 및 탄력성 | 중앙 서버 의존 | 높음 | 높음 |
관리 및 보안 관련 복잡성 | 중앙 서버 관리 필요 | 낮음 | 중간 |
Traditional Centralized Down : 중앙형 서비스
- Slow
- Single point of failure : 서버 하나만 고장나도 망함
- High bandwidth usage for server
Decentralized Peer-to-Peer Downloading
- Fast
- No single point of failure : 하나정도는 고장나도 괜찮음
- All downloaders are also uploaders(모든 다운로더는 업로더이기도 함) : 단점 책임을 안짐
Access network and physical media
Q. How to connect and systems to edge router?
- residential access nets - 주거용
- institutional access networks (school, company) - 기관용
- mobile acess networks - 모바일용
액세스 네트워크 유형 | 시스템을 엣지 라우터에 연결하는 방법 |
주거용 | - 이더넷 케이블을 사용하여 유선 연결 또는 무선(Wi-Fi) 연결 - 필요한 경우, 라우터의 설정을 구성 (IP 주소, 서브넷 마스크 등) |
기관용 | - 이더넷 케이블을 사용하여 유선 연결 또는 무선(Wi-Fi) 연결 - 네트워크 관리자가 시스템을 네트워크에 연결하거나 관리 - 필요한 경우, 네트워크 설정 및 보안 조치 적용 |
모바일용 | - 스마트폰, 태블릿 및 기타 모바일 디바이스는 무선 연결 (3G, 4G, 5G 등)을 통해 자동으로 연결 - 사용자는 일반적으로 연결 설정을 수동으로 구성할 필요 없음 |
Q. bandwidth (bits per second) of access network?
Q. shared or dedicated?
액세스 네트워크 유형 | 대역폭 (비트/초) | 공유(Shared) 또는 전용(Dedicated) |
주거용 | 몇 메가비트에서 수백 메가비트까지 | 공유 (주로 다수의 가구가 공유) |
기관용 | 높은 대역폭 가능 (기관에 따라 다름) | 주로 전용 또는 공유 (전용 회선 또는 VLAN 사용) |
모바일용 | 수십 메가비트 이상 (통신사마다 다름) | 공유 (다수의 사용자가 동시에 공유) |
Residential access : 가정 접속
1. point to point access
- Dialup via modem(모뎀을 통한 전화 접속)
- 컴퓨터나 다른 디지털 기기가 전화 회선을 통해 인터넷에 연결하는 방식을 의미합니다.
- up to 56Kbps direct access to router(often less)
- Can't surf and phone at same time: can't be "always on" (서핑과 전화를 동시에 할 수 없습니다: "항상 켜져" 있을 수 없습니다)
- DSL (Digital Subscriber Line)
- 가정의 DSL 모뎀은 수신한 디지털 데이터를 전화선을 통해 CO로 전송하기 위해, 해당 데이터를 고주파 신호로 변환한다.
- 여러 가정으로부터의 아날로그 신호는 DSLAM에서 디지털 포맷으로 다시 변환된다.
- DSL 표준은 여러 전송률을 정의하며, 이 전송률에는 업스트림과 다운스트림을 포함된다.
- up to 2.5 Mbps upstream (today typically < 1 Mbps)
- up to 24 Mbps downstream (today typically < 10 Mbps)
💡 "Upstream"은 데이터가 사용자의 장치에서 인터넷으로 나가는 방향, "Downstream"은 데이터가 인터넷에서 사용자의 장치로 들어오는 방향
2. cable network
- HFC : hybrid fiber coax
- asymmetric : up to 30Mbps downstream, 2Mbps upstream transmission rate
💡 fiber는 광섬유이다.
- network of cable and fiber attaches homes to ISP router
- 케이블 및 광섬유 네트워크가 가정(집)을 해당 지역의 인터넷 서비스 공급자(ISP)의 라우터에 연결하여 인터넷 서비스를 제공하고 있는 것
- homes share access to cable headend
- unlike DSL, which has dedicated access to center office (DSL과 달리, 중앙 사무실에 전용 액세스 권한을 가지고 있지 않습니다. <-> DSL은 중앙 교환소 또는 서버와 사용자 사이의 거리가 가까울수록 빠른 속도를 제공합니다.)
- deployment: available via cable TV companies (배포: 케이블 TV 회사를 통해 이용 가능)
- frequency division multiplexing(FDM): different channels transmitted in different frequency bands (FDM-주파수 분할 다중화: 서로 다른 주파수 대역에서 전송되는 서로 다른 채널)
Enterprise access net : 기업 접속망
1. local area network : 근거리 통신망
- company/ univ local area network(LAN) connects end system to edge router
💡 LAN의 반대 : LAN은 지역 내에서 작은 규모의 네트워크를 말하며, WAN은 넓은 지역과 긴 거리를 커버하는 네트워크를 의미
- Ethernet
- 10 Mbps, 100 Mbps, 1Gbps, 10Gbps transmission rates
- modern configuration : end systems connet into Ethernet switch (최종 시스템이 이더넷 스위치에 연결)
💡 Ethernet은 네트워크 기술의 한 종류로, 컴퓨터와 다양한 네트워크 장치 간에 데이터를 전송하고 통신하기 위한 표준화된 프로토콜 및 기술 집합
Wireless access networks
- shared wireless acces network connects end system
'개발 > TIL' 카테고리의 다른 글
[오토마타] context free grammar - 문맥 자유 문법(CFG) (1) | 2023.11.02 |
---|---|
[알고리즘] 선택 정렬 알고리즘 (0) | 2023.11.01 |
[Spring] unsupported class file major version 64 에러 (0) | 2023.09.07 |
[Spring] REST, REST API, RESTful ? (0) | 2023.07.31 |
[Spring] CRUD (0) | 2023.07.17 |