모든 네트워크 어플리케이션은 동일한 프로그래밍 모델을 기초로 하고, 비슷한 논리 구조로 동일한 인터페이스를 사용한다.
모든 네트워크 어플리케이션은 클라이언트-서버 모델을 기초로 하고 있으며, 한 개의 서버 프로세스와 한 개 이상의 클라이언트 프로세스로 구성된다.
ex) Filezilla - 서버에 연결하여 서버에 존재하는 파일에 접근하여 관리한다.
ex) 웹 서버가 브라우저로부터 요청을 받을 때, 디스크 파일을 읽는다.
ex) 웹 서버는 이 파일을 다시 클라이언트로 보낸다.
ex) 웹 브라우저가 서버로부터 페이지 한 개를 받은 후 스크린에 출력한다.
클라이언트-서버는 프로세스이며, 호스트가 아니다.
추가정보 internet 과 Internet의 차이 : internet은 일반적인 internet 개념을 나타내고, Internet은 특정 구현, 즉 IP Internet을 의미한다.
네트워크 호스트의 하드웨어 구성
계층구조 시스템
이다.LAN(Local Area Network)
로 빌딩이나 캠퍼스에 설치된다. 장 대중적인 LAN 기술은 이더넷(Ethernet) 이며 Xerox PARC에서 개발되었다.이더넷 세그먼트
는 호스트와 허브로 구성된다, 대개 방이나 빌딩 층과 같이 작은 지역에 설치한다.ex) 군 부대 또는 집 출입문 또는 층마다 설치되어 있는 단자함st
프레임 (Frame)
이라고 부르는 비트들을 이더넷 세그먼트의 다른 호스트에 보낼 수 있다.프레임
은 출발지와 목적지, 프레임의 길이를 식별할 수 있는 고정된 헤더 비트를 가지며, 그 뒤에 데이터(payload) 비트가 이어진다.이더넷 어댑터는 이더넷 네트워크를 이용하기위한 하드웨어 장치, MAC Address는 이더넷 네트워크에서 장치를 식별하기 위한 고유 주소.
라우터(router)
가 존재한다.Q. internet의 주요한 특성은 LAN과 WAN들로 이뤄져 있다는 것인데, 그렇다면 각 호스트는 물리적으로 연결되어져 있지 않는 비호환적인 네트워크를 지나 어떻게 목적지 호스트에 데이터를 전송할 수 있을까?
A. 해답은 네트워크 간의 차이를 줄여 주는 호스트와 라우터에서 돌고 있는 프로토콜 소프트웨어의 계층
이다. 이 소프트웨어는 어떻게 호스트들과 라우터들이 데이터를 전송하기 위해서 협력하는지를 결정하는 프로토콜을 구현한 것이다.
패킷
을 통해 패키징한다.패킷
은 패킷 헤더와 출발지 호스트가 보내려는 데이터 비트를 포함하는 데이터로 구성된다.다시 보는 단어장
Frame
: 출발지와 목적지, 프레임 길이를 식별할 수 있는 헤더와 데이터를 갖고있다.
internet H + FH1 = LAN1 Frame
internet 헤더에는 목적지 주소의 헤더로 지정된다. FH1은 라우터로 주소가 지정된다. 호스트 A는 프레임을 어댑터로 전달하고 FH1의 데이터가 internet 패킷
이며, 이렇게 패키징하는 것을 캡슐화
라고 한다.대부분의 모든 header에는 데이터 크기, 출발지와 목적지 주소를 갖고 있다.