// 에드센스

프로토콜

  • 통신에 참여하는 주체간에 데이터를 주고받는 과정을 정의한 규칙
  • 효율성, 호환성을 위해 정해놓은 규칙으로, 다수의 벤더와 관련 제품군 등장 및 이용 가능

 

 

 


OSI 7계층과 TCP/IP 프로토콜

두 모델의 공통점

  • 두 호스트 사이에서 이루어지는 네트워킹을 계층구조로 나눈것임
  • 각 계층에서 일어나는 일들을 모듈화 가능

 

두 모델의 차이점

  • OSI의 7,6,5층을 TCPIP에서는 한 층으로 퉁침
  • 이 측면에서는 OSI가 문제해결과 성능개선이 더 좋음

https://velog.io/@sj_dev_js/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-OSI-7%EA%B3%84%EC%B8%B5%EC%9D%84-%EC%99%9C-%EB%B0%B0%EC%9A%B8%EA%B9%8C

 

[네트워크] OSI 7계층을 왜 배울까?

네트워크를 공부할 때 가장 먼저 배우게 되는 것이 TCP/IP 모델 혹은 OSI 모델이다.오늘날의 네트워크에서 OSI모델은 참조적 모델일 뿐이고 실제로 쓰이는 것은 TCP/IP 모델이라는데 그렇다면 OSI 모

velog.io

 

 


1계층 : 물리계층

 

 

  • 상위계층(2계층)에서 받은 비트 스트림을 상대방의 물리계층으로 보내는 기능
  • 단지 데이터만 전달함
  • 전송단위(PDU)는 비트
  • 프로토콜: Modem, Cable, Fiber, RS-232C
  • 장비: 통신 케이블, 허브(리피터)

 

리피터란?

  • 전선(케이블)이 길수록 전기신호가 약해지는데 이를 증폭해줌
  • 지금은 네트워크 장비에 기본적으로 리피터기능이 탑재돼있기에 따로 리피터를 사용하지 않는다고함

허브란?

  • 컴퓨터 신호를 여러개의 다른 선으로 분산시키는 장치를 총칭함
  • 리피터는 1대1 연결만 가능
  • 허브는 다대다로 연결 가능
  • 얘도 리피터와 마찬가지로 전기신호의 증폭을 위해 사용
  • CSMA/CD 방식을 적용하기에 여러 장비에서 동시에 데이터를 전송하지는 못함 (A장비에서 데이터 전송중일때 B도 전송하면 충돌발생)
  • 특정 포트로만 데이터를 전송할수없고 모든 포트에 데이터를 전송하게 되기에 과도한 트래픽, 충돌 발생 -> 스위칭 허브 사용(레이어2에서 사용)

이렇게 생김

 

 


2계층 : 데이터링크 계층

 

  • 네트워크 기기들 사이에서 데이터를 전송하는 역할
  • 프레임이라는 단위
  • 3계층에서 내려준 패킷을 받아 헤더와 테일에 각각 주소와 제어정보를 추가함
  • 1계층을 통해 송수신되는 데이터의 전송 오류를 감지하여 재전송도 해줌
  • 맥주소를 가지고 통신
  • 맥주소란 컴퓨터의 물리적인 주소
  • ip주소가 시작점과 끝점의 주소라면 맥주소는 중간중간지점들의 주소
  • ex) 서울에서 부산으로 편지를 보낸다면 ip주소는 서울, 부산이 되고 맥주소는 서울우체국, 부산우체국1 등등이 된다
  • 프로토콜 : 이더넷, MAC, PPP, ATM, LAN, Wifi
  • 장비: 브릿지, 스위치

 

브릿지란?

  • 네트워크 세그먼트를 연결해주는 장치
  • 스위치가 나오기 전까지 브릿지가 주로 사용됐다고 함
  • LAN과 LAN을 연결하거나 컴퓨터 그룹(세그먼트)를 연결해주는 기능
  • 브릿지의 다섯가지 기능
    • Learning : A라는 호스트가 데이터를 주면 A의 맥주소를 브릿지의 맥주소 테이블에 저장
    • Flooding : 목적지 정보가 맥주소 테이블에 없다면 모든 포트로 데이터 전파
    • Forwarding : 목적지 정보가 맥주소 테이블에 있다면 해당 포트로 전송, 없다면 플로딩
    • Filtering : 브릿지를 건너지 못하게 막는 기능
    • Aging : 맥주소 테이블 데이터를 자동으로 삭제하는 일종의 TTL

 

스위치란?

  • 브릿지랑 비슷
  • 브릿지와의 차이는 -> 스위치는 하드웨어, 브릿지는 소프트웨어 방식이기에 스위치가 속도가 더 빠르다
  • 브릿지보다 포트수 많음, 포트별 속도지정이 가능
  • 여러모로 브릿지의 상위호환이기에 브릿지대신 스위치 사용한다
  • 스위치의 종류
    • L2스위치 : 기본적인 스위치. 데이터링크 계층에서 사용, 맥주소 기반으로 패킷 전달, 가격저렴
    • L3스위치 : L2스위치에 라우팅 기능이 추가됨, IP 정보를 보고 스위칭한다, 기능적으로 라우터와 똑같지만 라우터는 소프트웨어방식이기에 하드웨어 방식인 L3스위치가 더 빠르고 저렴
    • L4스위치 : 4계층 프로토콜인 TCP/UDP를 사용, IP와 포트 기반으로 스위칭, L4스위치에는 로드밸런싱 기능이 있음
    • L7스위치 : L4스위치와 기능,역할이 동일하나, L7스위치에서는 페이로드를 분석하여 패킷 처리. 페이로드를 분석함으로서 Dos, SYN Attack등 네트워크 공격 방어 가능. 가격 비쌈

 

 


3계층 : 네트워크 계층

  • 데이터그램이 가능 경로를 설정해줌
  • 데이터그램이란 네트워킹에서 데이터 전송의 단위, 그냥 데이터로 이해하면 될듯?
  • 라우팅 알고리즘을 통해 최적의 경로를 선택
  • 데이터를 목적지까지 안전하고 빠르게 전달하는게 중요 -> 이거를 라우팅이라고 한다
  • 전송단위 : 패킷
  • 프로토콜 : IP, ICMP
  • 장비 : 라우터, L3스위치

 

라우터란?

  • 네트워크에서 데이터 전송의 최적 경로를 찾아서 전송해주는 장비
  • L3와 기능 비슷, 하지만 소프트웨어 방식이기에 더 비싸고 느리고 초기설정 어려움
  • 라우터의 종류
    • 코어라우터, 센터라우터, 엣지라우터, 브로드밴드라우터, 핫스팟라우터, ISP라우터

 

 

 


4계층 : 전송계층

 

  • 발신지 - 목적지간 제어와 에러 관리
  • 패킷의 전송이 유효한지 확인하고 재전송을 하는 등 신뢰성있는 통신 보장
  • 오류검츨, 흐름제어, 패킷 생성, 전송, 재전송
  • 단위 : 세그먼트
  • 프로토콜 : TCP, UDP, ARP, RTR
    • 대부분 TCP
    • ACK을 통해 신뢰성있는 전송
    • UDP는 비연결성, 비신뢰성임. 수신자가 잘 받든말든 일단 데이터보냄, 에러나면 어플리케이션에서 알아서 처리해야함, 하지만 빠름, 실시간 서비스에서 적절
  • 장비: 게이트웨이, L4스위치

 

 

 


5계층 : 세션계층

  • 통신장치간의 상호작용을 설정, 유지, 동기화
  • 동시 송수신, 반이중, 전이중
  • 네트워크상 양쪽 연결을 관리하고 연결을 지속시켜줌
  • TCP/IP 세션을 만들고 없애는 역할

 

 


6계층 : 표현계층

 

  • 송신, 수신측 사이에서 데이터 형식을 정해줌(jpg, png등)
  • 7계층으로부터 받거나 주는 데이터의 인코딩, 디코딩이 이루어지는 계층
  • 프로토콜 : JPG, MPEG, SMB 등

 

 


7계층 : 응용계층

  • 사용자와 상호작용
  • 응용 SW
  • 프로토콜 : HTTP, DNS, Telnet, FTP등

 

 

 

 

 

참고:

https://youtu.be/8kI5OIrfZtI?si=-gZMcolC217Aht7y

https://backendcode.tistory.com/167

 

[네트워크] OSI 7 계층 (OSI 7 Layer)

이번에는 네트워크의 기본인 OSI 7 계층에 대해 정리할 것이다. 이번 글에서는 OSI 7 계층에 대해 다루고, 다음 글에서는 TCP/IP 4 계층에 대해 다루기 때문에 이어서 보면 이해하기 쉽다. 🖥️ 목차

backendcode.tistory.com

https://heisyoung.tistory.com/52

 

OSI 7계층 장비(리피터, 허브, 브리지, 스위치, 라우터)

1계층(물리 계층) - 리피터, 허브 리피터(Repeater) 긴 케이블일수록 신호가 약해지기 때문에 신호를 멀기 보내기 위한 증폭 장치이다. 지금은 다른 네트워크 장비에 기본적으로 리피터 기능이 탑재

heisyoung.tistory.com

 

 

 

 

메모

더보기

계층형 모델 (OSI 7Layer)

- 통신 장비들끼리 호환되도록 표준을 만든것

- 데이터가 전달되기위한 과정을 계층화 (ISO, DoD)

- 7단계중 한 곳에 이상이 생기면 다른 단계의 장비나 소프트웨어를 건들지 않아도 고칠 수 있다

- 복잡도를 줄이고 모듈화를 통한 기술발전, 호환성, 상호독립성

- 이 규칙을 따라야 네트워크 장비로서 다른 장비와 상호작용 가능

 

계층별 PDU(Process Data Unit)

1계층 - 비트

2계층 - 프레임

3계층 - 패킷

4계층 - 세그먼트

 

 

어플리케이션층에서 만들어진 data가

tcp udp 정보를 담은 세그먼트가 되고,

ip정보가 담긴 헤더가 붙은 패킷이 되고,

패킷의 정보에 이더넷 프로토콜의 정보를 담아서 프레임이되고

이 프레임이 전기적 신호로 전달됨

 

인캡슐레이션

디캡슐레이션

 

 

Encapsulation / Decapsulation

- 어플리케이션에서 만들어진 데이터가 해당 디바이스에서 네트워크를 통해 전달되는 과정

- 각 계층에서 동작하는 프로토콜별로 정보(헤더)가 추가되거나 벗겨지는 과정

 

 

어플리케이션

프레젠테이션

세션

...

 

내려가며 헤더가 붙음 -> 인캡슐레이션

이 헤더를 하나씩 떼어가며 정보를 읽는것 -> 네트워킹

 

 

어플리케이션 - 데이터 생성

- 구글검색

 

트랜스포트 - 세그먼트 생성 (세그먼트 = 포트정보+데이터)

- 디포트 : http이기에 80

- 소스포트

- 데이터

 

네트워크 레이어 - 패킷 생성 (패킷 = 세그먼트 + ip정보)

- dip(dns를 통해서 google.com의 ip를 획득하는 과정)

- 소스ip(내 ip)

- 데이터(세그먼트)

 

데이터링크 레이어 - 프레임 생성 (프레임 = 이더넷헤더 + 세그먼트)

- 이더넷헤더 추가

- dMAC(나와 연결된 같은 네트워크에서 어떤놈이 이 데이터를 받을지) (넥스트 홉)

- 소스MAC(내 기기의 MAC))

- 세그먼트

 

넥스트홉ip를 알아내는 과정을 라우팅이라고 함

라우팅 테이블을 룩업함

 

d는 destination(어디로 보낼지에 대한)

dip는 dns를 통해서 

dMAC은 라우팅과 ARP를 통해서

 

라우터는 dip를 보고 어디로 보내야할지를 결정 - 라우팅 테이블을 통해서

 

 

 

네트워크에서 출발지 - 목적지로 데이터를 전송할때 사용하는 통신방식

 

  • Unicast
    • 1대1 통신
    • 대부분 이거

 

 

 

  • Broadcast
    • 1대 N통신, 동일 네트워크에 존재하는 모든 호스트가 목적지
    • 유니캐스트로 통신하기 전 상대방의 정확한 위치를 알기위해 사용
    • 목적지가 전체이기에 과도하게 사용하면 성능저하

 

 

 

  • Multicast
    • 1대 그룹, 하나의 출발지에서 다수의 특정 목적지
    • 사내 방송같이 단방향으로 다수에게 동시에 같은 내용을 전달할때 사용

 

 

  • Anycast
    • 1대1 통신(동일 그룹 내의 1개 호스트), 다수의 동일 그룹중 가장 가까운 호스트에서 응답
    • 유니캐스트와 동일하지만 애니캐스트는 통신 가능한 다수의 후보군이 있다
    • IPv4에서는 일부기능 구현
    • IPv6에서는 모두 구현 가능

 

 

 

 

 

 

출처:

https://rooftoproom-whale.tistory.com/14

+ Recent posts