기존 인터넷 네트워크

 : 클라이언트가 요청한 내용이 '복잡한 인터넷 망' 속에서 여러 노드를 걸쳐 패킷으로 전송

 

TCP/IP

: 인터넷과 관련된 모든 Protocol 의 총칭

 

TCP/IP의 4계층(TCP/IP 4-Layer)

Application 계층 HTTP, FTP, DNS 등
Transport 계층 TCP, UDP
Internet 계층 IP
Network Interface 계층 물리적 네트워크

 

IP (Internet Protocol)

- 패킷(Packet) 통신 단위로 출발지 IP -> 도착지 IP Address 에 데이터 전달(애플리케이션 계층에서 전달받은 전송데이터에 IP 정보를 추가하여 전송)

 

- IP 가 가진 대표 정보

1. 출발지 IP

2. 도착지 IP

 

- IP의 한계

1. 비연결성 : 패킷을 보냈는데 상대가 수신받지 못하는 경우, 패킷은 그대로 전송되나 확인할 수 없음

2. 비신뢰성 : 패킷이 중간에 소실되거나 순서대로 받지 못하는 경우

3. 프로그램 구분 : 같은 IP를 사용하는 서버에서 통신하는 Application이 둘 이상일 시

-> TCP 가 보완

 

TCP(Transmission Control Protocol), 전송제어 프로토콜

- 신뢰할 수 있는 프로토콜로 Internet 계층으로 전달 전 순서, 보증, 검증에 대한 정보를 추가

 

- TCP 가 가진 대표 정보

1. 출발지/도착지 PORT

2. 전송제어, 순서, 검증정보 (UDP와의 차이점)

 

- TCP 특징

1. 3 Way HandShake : 연결지향 (연결을 확인 한 후 데이터 전송, 비연결로 인한 서비스 불능 방지)

* 연결과정 :

 ① 클라이언트 -> 서버 : SYN(접속 요청)

 ② 서버 -> 클라이언트 : SYN+ACK(접속 요청, 요청 수락)

 ③ 클라이언트 -> 서버 : ACK(요청 수락)

 ④ 데이터 전송

2. 데이터 전달보증 : 데이터 소실 방지

3. 데이터 순서보장

 

DNS

- IP 를 기억하기 어려움과, IP 교체시 발생할 수 있는 문제를 해결

OSI 모델 (Open Systems Interconnection Reference Model)

: 국제표준화기구(ISO)에서 만든 네트워크 통신의 7단계 과정

응용 계층
(Application Layer)
- 사용자 지원계층
- 서로 관련없는 소프트웨어시스템들의 상호연동을 가능하게 함
표현 계층
(Presentation Layer)
세션 계층
(Session Layer)
전송 계층
(Transport Layer)
- 상위계층(네트워크/데이터링크/물리 계층)<->하위계층(응용/표현/세션 계층)을 연결
- 하위계층에서 전송한 내용을 상위계층이 사용할 수 있는 형태가 되도록 보장
네트워크 계층
(Network Layer)
- 한 장치에서 다른 장치로 데이터 전송 시 필요한 물리적인 부분을 처리
(전기적인 규격, 물리연결, 물리주소 등)
데이터링크 계층
(DataLink Layer)
물리 계층
(Physical Layer)

 

7. 응용 계층 (Application Layer)

- 사용자가 네트워크에 접근할 수 있도록 함

- 사용자에게 보이는 유일한 계층이며 사용자를 위한 인터페이스 제공(FTP, SMTP, HTTP, DNS 등)

 

6. 표현 계층 (Presentation Layer)

- 응용계층으로부터 받은 데이터를 표준 포멧으로 변환

- 세션계층에서 온 데이터를 응용프로그램이 인식할 수 있는 데이터포멧으로 변환하여 응용계층에 전달(인코딩, 디코딩, 압축 등)

 

5. 세션 계층 (Session Layer)

- 프로세스사이에서 세션(Session)이라 불리는 연결의 확립하고 유지하며 동기화 하는 기능을 제공

- 표현계층으로부터 받은 데이터를 효율적인 세션관리를 위해 잛은 데이터 단위로 나눈 후에 전송 계층으로 내려 보냄

 

4.  전송 계층 (Pransport Layer)

- 세션을 맺고 있는 두 사용자 사이의 데이터 전송을 위한 종단간(End-to-End, 송신컴퓨터의 응용프로그램 - 수식컴퓨터의 응용프로그램) 제어를 담당

 

3. 네트워크 계층 (Network Layer)

- 송신자측에서 수신자측까지 데이터를 안전하게 전달하는 역할

- 논리적 링크를 설정하고 상위 계층 데이터를 작은 크기의 패킷으로 분할하여 전송하는 역할을 수행

 

2. 데이터링크 계층 (DataLink Layer)

- 물리계층 그대로의 전송설비를 신뢰할 수 있는 링크로 변환

- 상위계층인 네트워크에게 오류가 없는 물리계층로 보이도록 함

- 물리계층에서 전송하는 비트(Bit)에 대한 비트 동기 및 식별기능, 원활한 데이터의 전송을 위한 흐름제어, 안전한 데이터 전송을 위한 오류제어 기능 등을 수행

 

1. 물리 계층 (Physical Layer)

- 데이터를 물리매체상으로 전송하는 역할을 담당하는 계층

- 전송을 위해 필요한 물리적 링크의 설정, 유지, 해제를 담당

- 사용자장비와 네트워크 종단장비 사이의 물리적, 전기적인 인터페이스 규정, 전송 선로 종류에 따라 전송방식과 인코딩방식 결정

○ linux hostname 명령어(IP/NAME) 정리

- hostname -I : host IP

- hostname -A : host Name

 

ShellScript 작성 시 명령어 값 변수 선언 방식

#!/bin/bash

SERVER_HOST_NAME = $hostname -A
SERVER_HOST_IP = $hostname -I

'OS > Linux' 카테고리의 다른 글

Linux에서 Java class 실행시키기  (0) 2018.05.11
Package 이름으로 Process PID 찾기 (Java기준 작성)  (0) 2018.05.09

+ Recent posts