1. TCP/IP 4 layers
- 패킷 통신 방식은 인터넷 프로토콜인 IP와 전송 조절 프로토콜인 TCP로 이루어짐
- 네트워크를 상호 연결시켜 정보를 전송할 수 있도록 하는 역할
1) 네트워크 인터페이스 계층
- 네트워크에서 물리적인 데이터 전송/수신을 담당
- 전송 주소 : MAC (물리 주소)
- 데이터 단위 : Frame
- OSI 7 layers의 물리 계층 + 데이터 링크 계층에 해당
- 데이터를 전송하기 위해서 패킷에 MAC 주소를 붙여 프레임 형성
2) 인터넷 계층
- 네트워크에서 최종 목적지까지 연결성을 제공하기 위해서 출발지와 목적지의 논리적 주소(IP)를 할당
- 연결성 제공을 위해서 라우팅 기능으로 경로 설정
- 전송 주소 : IP
- 데이터 단위 : Packet
- OSI 7 layers의 네트워크 계층에 해당
- Segment를 목적지까지 전송하기 위해서 출발지와 목적지 논리적 주소(IP)를 붙여서 패킷 형성
- 프로토콜 종류
* IP(Internet Protocol) : 컴퓨터 네트워크에서 장치들이 서로 인식하고 통신을 하기 위해서 사용되는 특수한 번호
* ARP(Address Resolution Protocol) : 네트워크 상에서 IP 주소를 물리적 네트워크 주소로 대응(bind)시키기 위해 사용되는 프로토콜
3) 전송 계층
- 통신 노드 간의 연결 제어 및 데이터 송수신 담당
- 전송 주소 : Port
- 데이터 단위 : Segment
- OSI 7 layers의 전송 계층에 해당
- 실질적인 데이터를 전송하기 위해서 발신, 수신, 포트 번호, 오류 검출 코드를 붙여 segment 형성
- 프로토콜 종류
* TCP(transmission Control Protocol) : 데이터를 여러 개의 패킷으로 나누고 도착지에서는 완전한 데이터로 재조집하는 프로토콜
+ 패킷의 분실, 중복, 순서 바뀜 등에 대한 문제를 해결하기 때문에 신뢰성 높음
+ 데이터 전송 단위 : segment
+ 연결형 : 수신측에서 제대로 데이터를 받았는지 아닌지 확인
+ UDP에 비해 느림
* UDP(User Datagram Protocol) : 데이터를 나누고 재조립하지 않고 수신자가 받았던지 아닌지 상관 없이 데이터만 보내는 프로토콜
+ 패킷의 순서 바뀜 등에 대한 문제 해결을 하지 않음
+ 데이터 전송 단위 : datagram
+ 비연결형 : 수신자가 데이터를 받았는지 아닌 지 확인하지 않음
+ TCP에 비해 빠름
4) 응용 계층
- 사용자가 가장 가까운 계층으로 사용자가 어플리케이션과 소통할 수 있게 함
- 응용 소프트웨어들이 데이터를 교환할 수 있게 함
- 서버/클라이언트 응용 프로그램이 응용 계층에서 동작
- OSI 7 layers의 세션, 표현, 응용 계층에 해당
- 프로토콜 종류
* HTTP(Hyper-Text Transfer Protocol) : 서버와 클라이언트 사이에 이루어지는 요청/응답 프로토콜
+ 주로 TCP를 사용
+ 80번 포트 사용
* SSH(Secure Shell) : 네트워크 상에서 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 프로토콜
+ 안전하게 통신할 수 있는 기능을 제공
+ 22번 포트 사용
* DNS(Domain Name System) : 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대 변환을 수행. 즉, 사람이 이해하기 쉬운 도메인 이름을(예: naver.com) 숫자로 된 식별 번호(예: IP주소)로 변환
2. OSI 7 layers
- 국제표준화기구(ISO)에서 개발한 모델로서, 네트워크 프로토콜 디자인과 통신을 계층으로 나눔
- 계층으로 나뉘게 되면 문제가 발생했을 때, 단계별로 진단이 가능하고 해결책 적용 가능
- 송신과 수신 과정
1) 물리 계층
- 통신 케이블을 통한 전기 신호를 사용하여 bit stream을 전송
- 전기 신호를 주고 받기 때문에 데이터의 종류나 에러를 확인하지 않음
2) 데이터 링크 계층
- 물리적 연결을 통해 데이터 전송
- 데이터 전송 오류 감지와 재전송 기능
- 전송 주소 : MAC
- 데이터 단위 : Frame
3) 네트워크 계층
- 전송 데이터를 목적지까지의 경로를 찾아 전송
- 주소를 정하고 경로를 선택하고 패킷을 전송하는 역할
- 라우팅 기능
- 전송 주소 : IP
- 데이터 단위 : Packet
4) 전송 계층
- 데이터를 전송하고 전송 속도를 조절하고 오류를 맞추는 역할
- 신뢰성 있고 정확한 데이터 전송 기능
- 데이터 단위 : TCP - Segment, UDP = Datagram
5) 세션 계층
- 네트워크 상에서 양쪽 연결을 관리하고 연결을 지속시켜주는 역할
- 통신 장치 간에 상호작용 및 동기화 제공
- 연결 세션에서 데이터 교환과 에러 발생 시 복구를 관리
6) 표현 계층
- 응용 계층으로부터 전달받거나 전송하는 데이터의 인코딩 및 디코딩을 하는 역할
- 응용 계층에서 데이터를 이해할 수 있게 응용 프로그램에 맞춰 변환
- 포멧 종류 : JPEG, GIF, MPEG, etc
7) 응용 계층
- 사용자 또는 애플리케이션이 네트워크에 접속할 수 있는 인터페이스 제공 역할
- 예: 구글 접속이나 네이버 접속 등 작업 수행 가능
3. TCP/IP 4 layer vs OSI 7 layers 비교
TCP/IP 4 layers | OSI 7 layers |
등장 : 1960년대 후반과 1970년대 초의 네트워크는 각기 다른 네트워크에 속하는 사용자들이 자원을 공유하도록 지원하지 않아 호환성이 없어서 표준화가 필요 | 등장 : 인용 컴퓨터 보급으로 컴퓨터 간의 네트워크의 필요성이 대두되면서 ISO에서 OSI 7 계층 모델을 발표 |
OSI 7 layers 이전에 개발 | TCP/IP 이후에 개발 |
현재까지 계속 개발이 이어져 신뢰성이 높음 |
표준 모델로 발표되었지만, ‘이렇게 만들면 된다’라는 추상적인 절차 이후에 개발이 많이 이루어지지 않아서 신뢰성 부족 |
실질적으로 통신에서 많이 사용 | 표준으로 발표되었지만 이전에 사용하던 TCP/IP가 계속 사용되고 개발되어서 실질적으로 통신에서 적게 사용 |
참고
- 블로그 1
- 블로그 2
- 블로그 3
- 블로그 4
- 위키피디아 1
'Software Courses > Network' 카테고리의 다른 글
네트워크 구성요소 : Network Core (0) | 2020.12.28 |
---|---|
네트워크 구성요소 : Network Edge (0) | 2020.12.28 |
캡슐화 (0) | 2020.12.27 |
네트워크 통신 방식 : 유니 캐스트, 멀티 캐스트, 브로드 캐스트 (0) | 2020.12.26 |
네트워크란? (0) | 2020.12.26 |