HTTP : 웹 서버와 브라우저 간의 프로토콜
DNS, DNS 서버
DNS(Domain Name System) : 호스트 이름을 짓는 표준 프로토콜.
DNS 서버 : www.naver.com과 같은 사용자를 위한 DNS이름을 209.218.30.6과 같은 대응되는 IP주소로 변환해준다.
모든 컴퓨터는 자기 자신을 가리키는 특별한 호스트 이름인 localhost와 IP주소인 127.0.0.1을 가진다.
SocketChannel socketChannel = SocketChannel.open(new InetSocketAddress("localhost", 13000))
//인터넷 클래스는 InetAddress가 담당
IP주소 : 네트워크에 존재하는 컴퓨터를 유일하게 식별하는 숫자
URL(Uniform Resource Locator) : 인터넷에 있는 자원의 위치를 나타내기 위한 규약
<http://www.naver.com/index.html:80>
프로토콜 : // 호스트 이름 / 파일 이름 : 포트 번호
클라이언트와 서버 사이의 통신은 신뢰성이 있어야 한다.
신뢰성이 있다는 것은 데이터의 누락이 없어야 하고 서버에서 보낸 순서대로 클라이언트 측에 도착하여야 한다는 것이다.
이에 필요한 개념들을 정리했다.
통신을 원하는 두 개체 간에 무엇을, 어떻게, 언제 통신할 것인가를 서로 약속한 규약
프로토콜을 계층적으로 정의하여 프로토콜의 각 부분들을 독립적으로 설계하고 테스트할 수 있다.
응용프로그램 계층
FTP, TELNET, HTTP, SMTP
트랜스포트 계층
TCP, UDP
네트워크 계층
IP
데이터 링크 계층
PPP(point-to-point protocol)이 오류 감지
물리적 계층
WiFi
TCP/IP 5계층