OSI(Open System Interconection) 7계층 모델
- 국제표준화기구 ISO(International Organization for Standardization)에서 제정
- 네트워크 동작 과정을 설명하는 가장 대표적 모델 (개념적 모델)
-> 실제 구현되어 표준처럼 사용되는 모델은 CF, TCP/IP다.
통신 프로토콜(protocol) : 네트워크 통해 데이터를 주고받는 과정에 대한 약속
- OSI 7계층 모델은 통신 프로토콜을 7개 세부 프로토콜로 나누어 설명
1. 물리계층 : 비트
- 단말과 단말 사이를 실제 물리적 연결 ex) 광케이블, 구리 케이블
- 네트워크 사이를 연결하는 관문 역할 노드(3계층) + 네트워크 참여한 모든 단말 ex) PC, 스마트폰
2. 데이터 링크 계층 : 프레임 / MAC주소 사용
- 단말 사이 신뢰성 있는 전송 보장하는 계층(end-to-end가 아니라 point-to-point)
- 1계층 물리 계층에서 발생할 수 있는 오류 찾아내 수정 -> 에러를 패리티 검사를 통해 검출
- 2계층 데이터 캡슐화 = 3계층의 페이로드인 패킷 앞,뒤에 헤더와 테일을 덧붙임
ex) 이더넷, 토큰 링
3. 네트워크 계층 : 패킷 / IP 사용
- 라우팅을 처리하는 계층 (여러 개 노드를 거칠 때 마다 경로를 찾아주는 계층)
- 여러 개 노드가 복잡하게 연결된 네트워크에 최적의 전달 경로를 선택
- 3계층의 캡슐화 -> 세그먼트+헤더 => 패킷
-> 패킷 헤더에는 최적의 경로 선택을 위한 기초 자료 저장(각 노드 사이 전송 속도 저장)
4. 전송 계층 : 세그먼트 / 대표적 예시 TCP(Transmission Control Protocol), UDP(User Datagram Protocol)
- 데이터를 주고받을 때 데이터 유실이 없도록 보장하는 계층 (흐름 제어 : Flow control 사용)
-> 흐름제어 : 양 끝에서 전달받은 데이터 오류 검출 -> 오류 있다 판단시 재전송 요청 -> 데이터 유실 방지
- 전송 계층의 상하 관계의 특성 : 캡슐화(Encapsulation)
-> 5계층 1개 메세지 -> 2(n)개(전송에 적절한 크기)의 4계층 세그먼트로 쪼개짐(메세지 앞에 헤더 존재 : 순서 저장)
- TCP는 흐름제어를 하지만 UDP는 하지 않음 (그러나, UDP는 속도에서 빠른 장점을 지님 ex)영상 중계)
5. 세션 계층 : 데이터그램
- 두 개 응용 프로세스 사이 통신(세션)을 관리하는 계층
- 통신관리 방식 : 1)단방향 방식 2)반이중 방식 3)전이중 방식
6. 표현 계층 : 데이터그램
- 응용 계층에서 다루는 데이터 형식을 변환하는 계층 (암호화, 복호화, 혹은 인코딩, 디코딩 등의 데이터 형식 변환)
7. 응용 계층 : 데이터그램
- 사용자에게 인터페이스(UI)를 제공하는 계층 ex) 웹 브라우저
7계층 ~ 5계층 : 통신에 사용될 메세지가 만들어짐
4계층부터 : 만들어진 메세지를 실제 네트워크로 전송
네트워크 기본
- 네트워크 통신을 위해 NIC(Network Interface Card)가 필수다.
-> NIC는 흔히 LAN 카드라고 생각하면 된다.
- NIC는 고유한 MAC(Media Access Control) 주소를 가지고 있다.
-> MAC : 물리적 주소 (ipconfig /all에서의)
네트워크 연결장치
1) 리피터 : 멀리 보내기위해 약해진 신호를 증폭하는 장치
2) 허브 : 리피터 기능하는 여러 개 포트를 가진 멀티포트 리피터와 같다.
<리피터와 허브는 OSI계층의 물리 계층에서 동작하는 장치)
3) 브리지(Bridge) : 데이터 링크 계층에서 동작하는 연결장치 (목적지 MAC 주소를 알아내서 데이터를 보내는 역할)
4) 스위치(switch) : 서로 다른 매체 타입을 사용하는 두 네트워크를 더 큰 네트워크와 연결 (멀티포트 브리지)
-> MAC 주소 사용 / 스위치는 MAC 주소 테이블 유지하면서 목적지 MAC 주소를 보고 어느 포트에 연결된 장치로 가야하는지 파강 -> 그 포트로만 데이터 송신
5) 라우터(router) : 네트워크 계층에서 작동, 서로 다른 네트워크 중계 역할
- 보낸 정보의 IP인식하여 수신처 주소를 읽고 데이터 패킷이 IP주소에 찾아가는 가장 적절한 통신 통로로 지정, 전송
1계층 : 케이블, 리피터, 허브 (내부망)
2계층 : 랜카드, 브리지, 스위치 (내부망)
3계층 : 라우터 (외부망)
4계층 : L4 스위치
7계층 : L7 스위치
TCP/IP : 4계층으로 구분
- 인터넷을 움직이게 하는 핵심 통신 프로토콜
- 애플리케이션 계층(HTTP, SMTP, Telnet, FTP) = 7,6,5계층
- 전송 계층(TCP, UDP) = 4계층
- 네트워크 계층(IP, ARP, ICMP) = 3계층
- 네트워크 인터페이스 계층(Ethernet, Token Ring) = 2,1계층
IP : 네트워크 계층에 해당하는 통신 프로토콜, 라우팅 담당
IP주소 : 네트워크 상에서 유일한 주소
- IPv4, IPv6주소가 존재
1) IPv4 : 32비트(4바이트), 8비트씩 온점(.)을 찍어 끊음 : 0.0.0.0~255.255.255.255
-> IPv4 주소 부족 문제
2) IPv6 : 128비트(16바이트), 16진수 8개를 쓰고 각각 쌍점(:)기호로 구분
- IPv4와 IPv6은 호환이 안됨
IP주소 클래스
- A~E까지 모두 5개
- 일반적으로 사용 클래스 : A, B, C
-> A : 네트워크 주소 자체는 적지만 포함하는 호스트 개수 많음 (네트워크 128개 호스트 256의 3승개)
-> B,C : 네트워크 주소는 많지만 포함하는 호스트 개수가 적다 (C의 네트워크 2의 5승*256*256개, 호스트 256개)
- 특수 목적 클래스 : D, E
->D : 멀티 캐스팅용
->E : 주로 연구용
IP주소 = 네트워크 주소 + 호스트 주소
- 네트워크 주소 : 하나의 단위 네트워크 구분하는 ID (라우터의 주소)
- 호스트 주소 : 특정네트워크 주소에 속한 각각의 단말기 주소 (단말기 ID)
ex) 211. 21. 22. 222 (211.21.22 는 네트워크 주소 222는 호스트 주소)
공인 IP 주소 : IANA에 의해 할당받은 주소
사설 IP 주소 : 사내 네트워크에서만 사용될 수 있는 IP주소
과제 :
1. 4,3,2 계층에서 사용하는 Header 정보 + 프레임, 세그먼트, 패킷의 데이터 단위가 얼만지
2. 이더넷과 관련된 국제표준안 802.X에 관련된 표준안이 어떤게 있는지
'학교수업' 카테고리의 다른 글
<시험정리> 웹 개발 기초 (0) | 2021.10.17 |
---|---|
가상현실프로그래밍 6주차 (0) | 2021.10.13 |
임베디드기초 6주차 (0) | 2021.10.12 |
사물인터넷의 이해 6주차 (0) | 2021.10.12 |
웹개발 기초 6주차 (0) | 2021.10.11 |