IT recording...
[Network] 1. 인터넷 본문
[그림과 함께 편하게 보려면 여기로]
https://adorable-aspen-d23.notion.site/Network-1-77be727565e64cf28af06c2d4939b0a4
1. 인터넷
인터넷의 구성요소
- Network Edge
- application and hosts
- 사용자 컴퓨터나 서버들
- Network Core
- routers
- 사용자의 전달되어야 하는 메시지를 전달해주는 장치
- Protocol
- 보내고 받는 메시지의 format, 순서, action 등
- 표준화가 중요함
- IETF(Internet Engineering Task Force)라는 기관에서 RFC(Request for comments)를 발표함
- Access network
- core와 edge를 연결
- 여러 Access network 들
- DSL : KT,LG,SKT 같은 회사들이 Access network를 제공
- Dedicated
- 옆집과 우리는 별도의 라인을 가지고 있다.
- DSLAM (DSL Access Multiplexer)
- 각 집에서 오는 라인들이 멀티플렉싱 됨
- voice면 전화로
- data면 인터넷으로
- 각 집에서 오는 라인들이 멀티플렉싱 됨
- Cable Modem
- 케이블 네트워크를 이용해 인터넷에 엑세스한다.
- Shared
- 아파트 한 동에 있는 집들이 같은 케이블 회사를 사용한다면, 한 회선을 공유하는 경우가 많다.
- 케이블 방송은 일반적으로 broadcasting이어서 같은 시간에 같은 내용이 나오기 때문
- CMTS (Cable Modem Termination System)
- 멀티플렉서
- AP (Access Point)
- 일명 와이파이
- Router(core)
- 여러 엔드포인트들을 묶어서 연결해주는 역할
- Cable/DSL Modem
- central office로 연결해준다.
- 집에서 Home network를 구성하고, 이게 전화/케이블로 연결되고, 이게 인터넷에 연결된다.
- Ethernet Switch
- 각 이더넷 스위치에 컴퓨터 케이블 꽂음
- 와이파이 AP 도 이더넷에 연결
- Router
- 이더넷 스위치들을 연결
- ISP (Internet Service Provider)
- 집의 경우는 Cable,DSL Modem이었는데 데이터 양이 워낙 크다보니 직접 학교나 기관을 대표하는 router가 인터넷 회사와 직접 연결한다.
- Dedicated
- 1. Access net : DSL(digital subscriber line)
→ 모든 인터넷 요소들이 더불어 동작해야 사람들이 인터넷을 효과적으로 사용할 수 있다.
1. DHCP (Dynamic Host Configuration Protocol)
- 동적 호스트 구성 프로토콜
- 컴퓨터에 고유한 IP주소를 할당한다. (자동)
- 컴퓨터가 네트워크에 연결할 때, 컴퓨터는 한 DHCP 서버에 연결한다.
- DHCP는 사용 가능한 IP주소 풀에 접근해서 네트워크상에 있는 컴퓨터 각각에 고유한 IP주소를 할당한다.
2. DNS (Domain name System)
- 도메인 이름 시스템
- URL → IP 주소 변환 수행
- 웹 브라우저에 URL을 치면 컴퓨터는 DNS 서버에 접속한다.
3. URL , URI
- URI (Uniform Resource Identifier)
- 통합 자원 ‘식별자’
- URL을 포함하는 개념이다
- URL (Uniform Resource Locator)
- 자원이 실제로 존재하는 ‘위치’
- 방문하고자 하는 사이트의 IP주소를 인터넷을 사용하는 모든 사람들이 기억하기는 어렵다.
- IP주소를 치는 대신 google.com과 같은 URL을 입력함
- → DNS가 IP주소 찾아줌
- 차이점
<http://abc.com/index>
URI : O
URL : O
<http://abc.com/search?number=1000>
URI : O
URL : X
(<http://abc.com/search> 까지는 URL이다.)
2. IP주소 (Internet Protocol Address)
- 인터넷 상에 있는 장치들의 주소
- 장치들을 식별할 수 있게 해준다.
- IPv4
- #.#.#.#
- 203.253.13.16
- 10진수로는 0~255
- 2진수로는 8자리 숫자
- 32비트 → 약 40억개 공인된 주소
- 부족부족!!
- 사설 IP 주소 할당
- 10.#.#.#
- 172.16.#.# - 172.31.#.#
- 192.168.#.#
- 32비트 → 약 40억개 공인된 주소
- #.#.#.#
- IPv6
- #:#:#:#:#:#:#:#
- af21:10a8:1253:abd3:3019:0c2e:0b80:12a0
- 16비트씩 8개 숫자 → 128비트
- #:#:#:#:#:#:#:#
3. Router
- 인터넷에서 데이터에게 길을 알려주는 역할
- 인터넷상에서 패킷의 위치를 추출하여 그 위치에 대한 최상의 경로를 지정한다.
- 이 경로를 따라 다음 장치로 패킷이 전달된다.
라우팅 경로
- 라우팅 테이블
- 목적지 IP주소의 앞 숫자들을 보고, 패킷을 어떤 방향으로 보내야 할지 판단한다.
- 목적지까지의 정확한 경로 정보를 가지고 있지 않아도 된다.
- 뒷일은 다음 라우터에게 맡김
- 라우터는 같은 목적지의 데이터 패킷들을 서로 다른 경로로 보내기도 한다.
- 라우팅 테이블이 존재한다면 같은 목적지를 가리킬 때 같은 곳으로 보내줘야 하는거 아닌가?!!
- 라우팅 테이블은 네트워크 상태변화(연결이 끊겼다거나/어떤 경로의 비용,속도가 변했다거나) 에 따라 갱신된다.
- 경로상에 있는 어떤 라우터가 고장난 경우 그 경로로 패킷을 보내면 절대 전송이 안되므로!
- 라우팅 테이블이 존재한다면 같은 목적지를 가리킬 때 같은 곳으로 보내줘야 하는거 아닌가?!!
4. 웹 통신의 흐름
1. WEB
- WWW(world wide web)의 약자
- 인터넷으로 연결된 컴퓨터를 통해 정보를 공유할 수 있는 공간
2. Web 통신
- HTTP 프로토콜 사용
- Client, Server 가 Request와 Response를 주고받으며 통신이 일어난다.
3. 웹 통신 세부 과정
- https://www.abc.com/ URL 입력 (도메인 이름 입력)
- DNS 서버를 통해 도메인 이름과 매핑되는 IP 주소 획득
- HTTP 프로토콜을 사용하여 요청 생성 (http request)
-
- TCP 프로토콜을 사용하여 서버의 IP주소로 Reqest 전송
- 데이터들이 작은 패킷들로 분해된다.
- TCP는 각 패킷에 포트 번호와 패킷 번호를 매긴다.
- IP가 패킷의 목적지를 알려주면 라우터들을 통해 데이터가 전송된다.
- 서버가 클라이언트의 요청에 대한 응답 전송 (http response)
- 브라우저에 도착한 response는 웹페이지를 나타내는 데이터로 변환되어 브라우저에 나타남
참고
https://www.edwith.org/cs50/lecture/22869?isDesc=false
https://github.com/Seogeurim/CS-study/tree/main/contents/network
'Network' 카테고리의 다른 글
[Network] 6. 대칭키/공개키 (0) | 2022.05.16 |
---|---|
[Network] 5. DNS Round Robin (0) | 2022.05.16 |
[Network] 4. HTTP (0) | 2022.05.16 |
[Network] 3. TCP, UDP (0) | 2022.05.16 |
[Network] 2. OSI 7계층 (0) | 2022.05.16 |
Comments