OSI 7 Layer
1. ISO에서 서로 다른 시스템간의 통신을 허용하기 위해 OSI참조 모델을 만듬
2. OSI 참조모델은 호환성이 있는 네트워크 프로토콜의 개발을 위한 지침 제공
3. OSI 참조모델은 네트워크가 제공하는 여러가지 기능을 7개의 계층으로 나누어 식별
4. 각 계층간 독특한 기능을 가지며, 전체 모델이 올바르게 작동할 수 있도록 계층간에 상호 의존
OSI 7 Layer의 장점
1. 모듈화를 통한 네트워크의 쉬운 이해 가능
2. 네트워크 문제 해결 용이
3. 효율적인 장비 개발 가능
4. 장비 개발을 위한 표준 제공
OSI 7 Layer 계층별 역할
1. 물리 계층 (Physical Layer)
가. 데이터를 전기적인 신호로 변환해서 주고받는 기능을 진행하는 공간
나. 주소의 개념을 인식하지 못함
다. 데이터를 전송하는 역할
다. Device: Hub, Repeater, Cable
Hub: Repeater의 모든 기능 포함
2. 데이터 링크 계층(Data-Link Layer)
가. 시스템 간의 논리적인 연결
나. 하드웨어 주소에 기반하여 통신에 대한 제어가능
다. 물리 계층으로 송수신되는 정보를 관리하여 안전하게 전달되도록 도와주는 역할
라. MAC 주소를 통해 통신, 프레임에 MAC주소를 부여하고 에러검출, 재전송, 흐름제어를 진행
마. Switching: 하나의 Input port와 하나의 Out port Mapping
바. Device: Switch, NIC, Bridge
Switch: 포트별로 시그널을 전송하므로 스위치에서는 충돌을 막고, 스위치 내부의 MAC Address Table의 Flooding과 Filtering을 이용함
* Switch를 통한 통신과정
1) 최초 프레임 전송시 Frame source MAC Address와 Input Port 매칭후 Learning
2) 목적지 주소에 대한 내용이 MAC address Table에 없으므로 모든 Port Flooding
3) 응답 Port MAC Address Mapping 과정을 통하여 Switch에 연결된 모든 Port와 MAC Address Mapping 작업
4) MAC Address Table 완성 후 특정 목적지 주소와 일치하는 Port에 Forwarding 및 일치하지 않는 Port에 Filtering을 통해 Collision Domain을 나눔
* Collision Domain: Collision이 발생할 수 있는 영역
3. 네트워크 계층 (Network Layer)
가. 네트워크 연결 및 경로 결정, 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능을 담당
나. 라우터를 통해 이동할 경로를 선택하여 IP주소를 지정하고, 해당 경로에 따라 패킷을 전달
다. 프로토콜: ICMP, IGMP, IP, ARP, RARP
라. Device: Router, L3 Switch
Router: 네트워크와 네트워크를 연결
L3 Switch: 물리적으로 하나의 네트워크를 나눈 후 Routing 기능 수행시 주로 사용
마. RIT(Rouint Information Table)이 내부적으로 존재
바. Broadcast Domain을 나눔
4. 전송계층 (Transport Layer)
가. TCP, UDP 프로토콜을 이용하여 통신을 활성화, 포트를 열어두고, 프로그램들이 전송 할 수 있도록 제공
나. 포트번호 담당
다. 프로토콜 : TCP, UDP
라. 장비: Gateway, L4 Switch
5. 세션계층 (Session Layer)
가. 인증 및 서비스 제공 , 데이터가 통신하기 위한 논리적 연결을 담당
나. 응용 프로그램간의 연결과 끊기를 담당
다. API, Socket
6. 표현계층 (Presentation Layer)
가. 데이터 표현에 대한 독립성을 제공, 암호화 및 파일 인코딩, 명령어 압축 등
나. 7계층에서 오리지널 데이터를 받아 확장자를 넣어 어느 응용프로그램과 연결할지를 결정
다. JPEG, MPEG 등
7. 응용계층 (Application Layer)
가. User Interface, Data 생성
나. http(WEB통신 프로토콜), ftp,tftp(파일전송 프로토콜), telnet(원격접속 프로토콜), ssh(암호화 원격접속 프로토콜), Smtp(mail 보낼 때 프로토콜), Pop3(mail 받을 때 프로토콜), DNS(IP와 도메인 매핑), DHCP(IP 자동할당), snmp(네트워크 관리 프로토콜)
다. 최종 목적지로, 프로토콜들이 사용자에게 직접적으로 서비스 함
'기타' 카테고리의 다른 글
TDD(Test Driven Development) (0) | 2020.01.02 |
---|---|
객체지향 프로그래밍 (0) | 2019.12.31 |
애자일 (0) | 2019.12.31 |
TCP vs UDP (0) | 2019.12.11 |
로드 밸런서(Load Balancer)란? (0) | 2019.12.11 |