3 분 소요

  • Protocol (프로토콜)

컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계.

  • TCP / IP

인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 통신규약의 모음.

TCP/IP 4계층 모델

4층 응용 계층 HTTP, DNS, FTP, … 애플리케이션에 맞추어 통신한다.
3층 전송 계층 TCP, UDP, … IP와 어플리케이션을 중개해 데이터를 확실하게 전달한다.
2층 인터넷 계층 IP, ICMP, ARP, RARP 네트워크 주소를 기반으로 데이터를 전송한다.
1층 네트워크 접근 계층 Ethernet, wifi, … 컴퓨터를 물리적으로 네트워크에 연결해서 기기 간에 전송이 가능하게 한다.

IP

IPv4 주소는 OOO.OOO.OOO.OOO 마침표로 구분된 4개의 8비트 필드(8자리 2진수 4개)

형식으로 되어있음.

anatomy-of-ipv4-address

MAC 주소와 달리, IP 주소는 처음부터 주어지는 것이 아니라 할당이 되는 것.

호스트부를 변경해 가면서 IP할당이 이루어 짐.

  • **IP프로토콜의 한계**
    • 비연결성
    • 비신뢰성

패킷을 받을 대상이 없거나 특정한 이유로 서비스 불능 상태에 빠져도 데이터를 받을 상대의 상태

파악이 불가능하기 때문에 패켓을 그대로 전송하는 비연결성 문제가 있음.

중간에 패킷이 사라지더라도 보내는 기기 측에선 알 수 있는 방법이 없음,

서로 다른 노드를 거쳐서 전송되는 특성사으, 보내는 기기측에서 의도한 순서대로 데이터가

도착하지 않을 수 있음.

한 IP에서 여러 애플리케이션이 작동하는 경우 특정할 수 없는 한계가 있음.

이런한 한계들을 극복하기 위해 TCP 와 UDP가 사용되고 있음.

TCP, UDP

TCP와 UDP는 TCP/IP 4계층 모델 을 기준으로 IP 프로토콜의 계층인

인터넷 계층의 상위에서 동작을 함.

전송계층에 속하는 TCP와 UDP는 2계층에서 동작하는 IP 와 4계층에서 동작하는 애플리케이션(http 등)을 중개하는 역할을 함.

  TCP UDP
서비스 타입 연결 지향적 프로토콜 데이터그램 지향적 프로토콜
신뢰성 데이터 전송 표적 기기까지의 전송을 보장함. 표적 기기까지의 전송이 보장되지 않음.
순서 보장 전송하는 패킷들이 순서가 보장됨 패킷순서 보장이 안됨. 순서를 보장하고 싶다면, 애플리케이션 레이어에서 관리되어야 함.
속도 UDP와 비교해 느림 TCP와 비교해 빠르고, 단순하며 더 효율적인 속도를 가지고 있음.

데이터의 신뢰성을 필요로하는 애플리케이션은 TCP

빠른 속도나 실시간 통신이 중요한 애플리케이션의 경우 UDP

HTTP의 경우 모든 데이터를 제대로 송수신이 가능해야 하는 특성상, TCP를 사용함.

  • 비디오 스트리밍 상황에 주로 사용하는 방식은?
    • 실시간 데이터를 주고 받아야하는 상황에서는 속도가 중요함 / UDP 사용.
    • 하지만 넷플릭스는 TCP를 사용 / TCP는 시간에 민감하고 포트 포워딩이 필요하지 않기 때문. TCP는 종단간 연결을 사용하여 버퍼링이나 실시간 스트리밍 문제를 줄여 비디오 품질을 높이고 네트워크 정체 문제를 줄일 수 있음.

PORT

포트번호는 대상 IP 기기의 특정 어플리케이션(connection endpoint)을 특정하는 번호.

  Port number range description
Well-known port 0 ~ 1023 시스템 사용 번호 (슈퍼유저 권한 필요) 사용 권장X
Registered port 1024 ~ 49151 특정 프로토콜이나 어플리케이션 에서 사용하는 번호
Dynamic port 49152 ~ 65535 어플리케이션에서 혹은 임시 사용 번호
Port no Protocol name Transport protocol description
80 HTTP TCP 웹 서버 접속
443 HTTPS TCP 웹서버 접속(SSL)
110 POP3 TCP 메일 읽기
25 SMTP TCP 메일서버간 메일 전송
22 SSH TCP 컴퓨터 원격 로그인
53 DNS UDP DNS 질의
123 NTP TCP 시간 동기화

URL

URL 은 웹에 게시된 어떤 자원을 찾기 위한 브라우저에서 사용되는 메카니즘.

인터넷상에서 HTML이나 이미지 등 리소스의 위치를 특정하기 휘한 서식으로써 탄생.

file:// , http:// , https:// scheme 통신 프로토콜
127.0.0.1 , www.google.com hosts 웹 페이지, 이미지, 동영상 등의 파일이 위치한 웹 서버, 도메인 또는 IP
:80 , :443 , :3000 port 웹 서버에 접속하기 위한 통로
/search , /Users/username/Desktop url-path 웹 서버의 루트 디렉토리로부터 웹 페이지, 이미지, 동영상 등의 파일이 위치까지의 경로
q=Java query 웹 서버에 전달하는 추가 질문

도메인 종류

도메인은 두 종류로 나뉨.

  • gTLD – generic Top Level Domain
  • ccTLD – country code Top Level Domain

gTLD는 전세계에서 등록이 가능한 .com, .net, .org, .edu, .gov, .int, .mil 일곱 가지로 시작하여

현재 .biz, .name, .info 등이 추가되어 왔음.

gTLD의 경우 VERISIGN 등의 회사가 registrar이고, 국내 ICANN 인증 registrar 는 가비아, 후이즈 등이 있음

ccTLD의 경우 .kr, .us, .jp 등 200개 이상이 있음. 각국 네트워크 정보센터에서 위임받아 관리하며,

. kr의 경우 한국인터넷진흥원이 registry로 그리고 registrar는 가비아, 후이즈 등이 있음.

DNS

호스트의 도메인 이름을 IP 주소로 변환하거나,

반대의 경우를 수행할 수 있도록 개발된 데이터베이스 시스템.

예를 들어 naver.com을 입력하면, DNS에서 IP주소(125.209.222.142) 를 찾고,

이 IP 주소에 해당하는 웹 서버로 요청을 전달하여 클라이언트와 서버가 통신할 수 있도록 함.

네트워크 상에 존재하는 모든 PC는 IP주소가 있음.

모든 IP 주소가 도메인 이름을 가지는 것은 아님.

로컬 PC를 나타내는 127.0.0.1 은 localhost 로 사용할 수 있지만,

그 외의 모든 도메인 이름은 일정 기간 동안 대여하여 사용

네트워크 관련 기술 용어

  • LAN(Local Area Network): 좁은 범위의 특정 지역을 범위로 하는 네트워크
  • WAN(Wide Area Network): 넓은 범위에 구축된 네트워크
  • 인터네트워킹(Internetworking): 두 개 이상의 네트워크를 연결하여 네트워크 간 하드웨어나 소프트웨어 모두를 연결시키는 방법론
  • 프로토콜(protocol): 컴퓨터 사이에 데이터 교환 방식을 정의하는 규칙
  • TCP/IP: 컴퓨터 사이의 통신 표준 및 네트워크의 라우팅 및 상호연결에 대한 자세한 규칙을 지정하는 프로토콜 스위트
  • IP(Internet Protocol): 인터넷상에서 사용하는 주소체계
  • MAC 주소: 컴퓨터의 물리적 주소
  • 패킷: 데이터를 작은 단위로 나눈 것
  • port: 대상 기기의 특정 어플리케이션을 특정하는 번호(80, 443 110, 25, 22, 53, 123등)

카테고리:

업데이트:

댓글남기기