인터네트워크 : LAN, WAN 등 독립적 네트워크를 상호 연결하여 만든 네트워크
인터넷 : 인터네트워크로 구성된 대표적인 네트워크들의 네트워크
i. 미국방성 알파넷이 시초로 연구기관에 보급되며 기능이 확대되었다
ii. 이후 인터넷 기반 프로토콜인 TCP/IP도 생성되었다
가정과 대학, 기업, 정부 연구기관 등을 연결하여 전 세계적 규모의 네트워크를 구성한다
네트워크 접근 계층, 인터넷 계층, 전송 계층, 응용 계층으로 4 계층으로 구성되어있다
TCP/IP는 인터넷에 기반을 둔 프로토콜로 OSI 참조모델보다도 먼저 개발되었다
일반적인 네트워크 계층구조와 같이 송신 측에서 데이터를 캡슐화하고 수신 측에서 캡슐해제한다
캡슐 단위 : 메시지(응용) <--> 세그먼트(전송) <--> 데이터그램(네트워크) <--> 프레임(네트워크 접근)
IP주소 또는 인터넷 도메인으로 표현한다
- IP주소 체계 : 숫자로 이뤄진 컴퓨터가 인식 가능한 주소 체계
- 인터넷 도메인 : 무자로 이뤄진 사람이 인식 가능한 주소 체계
IP주소와 도메인은 컴퓨터마다 유일하게 배정되며, 인터넷 계층의 IP에서 정의 및 처리한다. 또한 인터넷 주소는 국가별 관리 기관에서 관리하며 IANA, APNIC, KRNIC 등이 있다.
영문자와 .을 혼합해 호스트 컴퓨터의 주소를 표현한 것
도메인명 규칙
i. 최대 256자
ii. 숫자와 영문자 조합
iii. 하이픈 사용 가능
iv. 전 세계적으로 중복되지 말아야함
Domain Name System (DNS) : 도메인명과 IP주소를 대응 시켜주는 분산 시스템
네트워크 매체를 통해 다른 네트워크로 데이터 전송한다
이더넷, FDDI, 토큰 링, X.25 등
전달하는 데이터 단위 : 프레임
발신지에서 목적지로 데이터 전송을 담당한다. 주소 지정, 라우팅 기능을 제공한다
IP, ICMP, IGMP, ARP, RARP 등
전단하는 데이터 단위 : 데이터 그램
IP : 데이터그램을 전송하도록 라우팅 기능 수행하고 경로 설정과 주소 지정을 한다
ICMP : IP에서 발생하는 문제를 처리하기 위한 프로토콜. 오류/상황 보고 및 경로 제어 정보 전달 기능 수행
IGMP : 멀티캐스트 기능을 수행으로 수신자 그룹에 메시지를 동시에 전송하는데 사용한다
ARP : IP 주소를 MAC(이더넷) 주소로 변환한다
RARP : MAC 주소(이더넷 주소)를 IP 주소로 변환한다
두 종단 간 연결을 설정한 후 세그먼트 단위 데이터를 전송하는 연결형 프로토콜
응용 프로그램 간 메시지 전달을 위해 포트 번호를 이용하고 다중연결을 허용한다
흐름제어와 혼잡제어를 수행한다
TCP의 연결지향형 방식 = 신뢰성 스트림 서비스
TCP가 상위계층으로 전송하거나 상위 계층에서 TCP로 전송할 때 사용하는 데이터 이동 통로
0~65535번 사용 가능
0~1023번은 주요 인터넷 서비스에 고정 할당
소켓 주소 : IP 주소 + 포트 번호 조합. 각 종단 프로세스 구분하는 주소로 사용
TCP는 슬라이딩 윈도우를 사용한 피기백 방식 흐름 제어를 지원한다
두 종단 간 연결을 설정하지 않고 데이터를 고속으로 교환하는 비연결형 프로토콜
비연결형이라 데이터가 제대로 전송 됐는지 확인하지 않는다
신뢰성이 낮고 흐름제어 및 오류 검출 등 기능이 없다
패킷을 빠르게 전송해햐 하는 응용 계층에서 사용한다
오버헤드 크기가 크지 않고, 연결 등에 대한 상태 정보를 저장하지 않는다
인터넷 프로토콜의 최상위 계층으로 최종 사용자에게 인터넷 서비스를 제공한다
대부분 클라이언트-서버 모델로 구현된다
연결 방식에 따라 연결형(TCP/IP 사용)과 비연결형(UDP/IP 사용)으로 분류된다
인터넷에서 하이퍼텍스트 문서를 교환하는데 사용하는 통신 규약
인터넷을 이용한 WWW에 기반을 두고 정보 공유
클라이언트와 서버 방식으로 작동
웹 서버에 저장된 데이터를 URL로 표기
Uniform Resource Location : 인터넷 상에서 특정 자원의 고유한 위치를 표현하는 방법
프로토콜 종류 + 서버 주소 + 폴더 + 파일이름으로 구성
예) http://www.hufs.ac.kr/~shko/2020-lecture/network/report.html
파일을 효율적으로 주고 받기 위한 프로토콜
인터넷을 이용해 컴퓨터끼리 파일을 송수신한다. 송수신을 위해선 원격 호스트 컴퓨터를 이용할 수 있는 권한이 필요하다. 계정 없이도 접속할 수 있도록 anonymous 계정을 제공한다.
원격지에서 컴퓨터를 이용한 가상 단말 기능을 구현하는 프로토콜.
전자우편 서비스를 사용할 수 있는 프로토콜
8비트 정수 4개와 .으로 표현. 총 32비트. 네트워크 번호 + 호스트 번호로 구성
8bit로 0~127 네트워크 구성. 0,127을 제외한 126개 라우터 구성 가능
0 : 사용 x, 127 : 시스템 루프백
24bit로 0.0.0~255.255.255 호스트 번호 구성. 0.0.0, 255.255.255 제외 2^24-2개 호스트 사용 가능
0.0.0 : 네트워크(라우터) 주소, 255.255.255 : 브로드캐스트 주소
네트워크 마스크 : 255.0.0.0
16bit로 128.0~191.255 네트워크 구성. 2^14개 라우터 구성 가능
16bit로 0.0~255.255 호스트 번호 구성. 0.0, 255.255 제외 2^16-2개 호스트 사용 가능
0.0 : 네트워크(라우터) 주소, 255.255 : 브로드캐스트 주소
네트워크 마스크 : 255.255.0.0
24bit로 192.0.0~223.255.255 네트워크 구성. 2^21개 라우터 구성 가능
8bit로 0~255 호스트 번호 구성. 0, 255 제외 2^8-2개 호스트 사용 가능
0 : 네트워크(라우터) 주소, 255 : 브로드캐스트 주소
네트워크 마스크 : 255.255.255.0
컴퓨터가 인터넷에 접속하려면 고유(공인) IP 주소가 있어야한다. 인터넷에 연결하지 않고 개별적으로 구성한 네트워크에서는 사설 IP를 사용할 수 있다. NAT 서버를 사용하면 사설 IP를 공인 IP로 변환하여 인터넷에 접속할 수 있다. IPv4의 주소 부족 문제를 해결하는 방법으로 사용한다.
헤더와 데이터로 구성되면 헤더 부분에 다양한 정보가 있다
송신지에서 목적지로 패킷을 전송할 때 중간 노드를 경유하여 연결하는 기능
여러 라우팅 알고리즘을 실행하여 라우팅 테이블에 경로 정보 저장
현재 경로가 유효한지 지속적으로 확인하고, 더 좋은 경로 발견 시 대체
라우팅 테이블 : 전송 과정에서 라우터가 경로를 쉽게 찾도록 하는 도구
예)
2^32개 주소를 가진 IPv4의 부족 문제로 2^128개 주소가 가능한 128비트 주소 체계