일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Typescript Study
- ts 기초 설정
- 프론트 이미지 업로드
- firebase server
- Blob?
- Blob이란?
- Blob 청크
- ts 프로젝트 설정 추천
- why use interface?
- ts.config.json
- ts 설정
- ts 필수 설정
- 공부
- 타입스크립트 설정값
- ts 설정값
- JS 이미지 미리보기
- 이미지 서버에 업로드
- TypeScript
- TypeScript config
- TypeScript Deep Dive
- JS Blob
- Null vs Undefined
- 인터페이스 vs 타입
- Blob 사용하는 이유
- Typescript Handbook
- 인터페이스 타입 비교
- Interface vs Type Alias
- TypeScript Undefined Null
- ts.config.json default setting
- 타입스크립트 필수 설정
- Today
- Total
RPG처럼 웹 개발하기
설명하며 이해하는 인터넷의 작동 원리 본문
인터넷 (네트워크) 의 작동 원리
인터넷?
인터넷의 가장 기본적인 것은,
컴퓨터들이 서로 통신이 가능한 거대한 네트워크라는 것입니다.
두개의 컴퓨터가 서로 통신을 할때, 두 컴퓨터는 물리적 또는 무선으로 연결되어야 합니다.
하지만 위처럼 컴퓨터를 연결하게 된다면 컴퓨터가 많아지는 상황에서는 아래처럼 상당히 복잡한 연결을 하게 됩니다.
위처럼 복잡한 문제를 해결하기 위해 컴퓨터와 컴퓨터 사이에 라우터라는 소형 컴퓨터를 두고 연결됩니다.
라우터의 역할은 각 컴퓨터 사이의 다리 역할이며,
전달받은 데이터를 정확한 지점으로 전달해줘야 합니다.
하나의 라우터만 사용가능한것이 아니라
여러개의 라우터를 연결하며 라우터에서 라우터로, 무한히 확장할 수 있습니다.
하지만 우리는 주변의 사람들에게만 연결할것이 아니고 아주 먼곳의 사람 또한 연결해야 합니다.
지구 한바퀴를 케이블 선으로 뒤 덮을수 없으니, 전화 기반 시설을 사용하여 전세계와 연결합니다.
이를 위해 네트워크 정보를 전화시설에서 처리할 수 있는 정보로 바꾸며,
그 반대의 역할 또한 수행하는 모뎀 이라는 특수한 장비를 사용합니다.
이제 제 네트워크에서 상대방의 네트워크로 메세지를 보내기 위해
네트워크를 인터넷 서비스 제공 업체(ISP)에 연결합니다.
ISP는 모두 함께 연결되는 몇몇 특수한 라우터를 관리하며 다른 ISP의 라우터에도 액세스 할 수 있는 회사입니다.
따라서 제 네트워크에서 보낸 메세지는 ISP 네트워크의 네트워크를 통해 상대방의 네트워크로 전달 됩니다.
인터넷은 이러한 전체 네트워크 인프라로 구성됩니다.
컴퓨터에 데이터를 보내려면 데이터를 받을 특정 컴퓨터를 지정해야 합니다.
네트워크에 연결된 모든 컴퓨터에는 IP 주소가 있습니다.
컴퓨터는 이러한 주소로 다른 컴퓨터를 찾아가는데 전혀 문제가 없지만 인간은 IP주소를 기억하기 어렵습니다.
그래서 우리는 도메인 이라고 하는 사람이 읽을 수 있는 IP 주소의 이름을 지정할 수 있습니다.
도메인 ?
ip는 사람이 이해하고 기억하기 어렵기 때문에
각 ip에 이름을 부여할 수 있게 했는데 이것을 도메인 이라고 합니다.
( RPG 처럼 웹 개발하기 → 192.168.0.1 )
이미지 및 정보의 모든 출처 : MDN Web Docs https://developer.mozilla.org/ko/docs/Learn/Common_questions/How_does_the_Internet_work
'웹 개발' 카테고리의 다른 글
웹 성능을 최적화하는 쉽고 간단한 방법? ( feat. 이미지 ) (0) | 2022.08.09 |
---|---|
CSS 함수 clamp를 사용해보았다. (0) | 2022.07.28 |
React 는 왜 함수형 컴포넌트 사용을 권장할까? (0) | 2022.07.07 |
HTTP / HTTPS 를 쉽게 알아보기로 했다. (0) | 2022.06.28 |
Git branch ( 깃 브랜치 ) 전략을 사용해보기로 했다. (0) | 2022.06.21 |