CS/네트워크

OSI계층, TCP/IP

로드존슨 2023. 4. 11. 16:14
728x90

OSI 모델은 컴퓨터 네트워크에서 통신 프로토콜을 이해하고 설계하는 표준화된 방법을 제공하는 개념적 프레임워크이다.

 

OSI 7계층을 나눈 이유는?

통신이 일어나는 과정을 단계별로 파악하기 위함
7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건들지 않고 에러단계만 고칠수 있기 때문이다.



OSI7계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다.

 

01_ 물리계층

-인터넷 케이블, 라우터 스위치 등의 전기적 신호가 물리적 장치에 왔다갔다하는 곳을 말한다.

 

02_ 데이터링크계층

- 네트워크 상의 주변 장치들 간의 데이터를 전송한다.

스위치는 네트워킹 장치이며 미디어 엑세스 제어 주소를 기반으로 데이터 패킷을 의도한 대상으로 전달하여 네트워크 내에서 장치를 연결하는데 사용한다.

03_ 네트워크계층

- IP 의 주소를 찾는다. 라우터의 기능 대부분이 여기 네트워크 계층에 자리 잡는다. 

라우터는 네트워크 계층에서 작동하는 네트워킹 장치이며 컴퓨터 네트워크의 서로 다른 네트워크 또는 서브넷 간에 데이터 패킷을 전달하는 역할을 한다. 대상 IP 주소를 기반으로 의도한 목적지에 도달하는 가장 효율적인 경로를 결정

 

라우터를 통해 효율적인 경로를 확인하고 스위치를 통해 그 경로를 설정하여 의도한 목적지까지 전달한다.
라우터와 스위치는 함께 작동하여 데이터 패킷이 효율적으로 라우팅되고 의도한 대상으로 전달되도록 하여 네으워크 장치 간에 원할한 통신을 보장한다.

 

04_ 전송계층

-통신을 연결한 다음 데이터를 주고 받는다.

05_ 세션계층

-통신을 관리한다.

06_표현계층

-주고 받은 인터페이스 , 규칙들을 맞춰준다. 규격을 맞춰준다.

 응용프로그램 형식을 준비 또는 네트워크 형식으로 변환하거나 네트워크 형식을 응용프로그램 형식으로 변환한다.

07_응용계층  

- 사용자와 직접적으로 상호작용한다.

 

 

 

 

TCP/IP 는 OSI7계층 모델에 비해 더 간단하고 실용적인 프로토콜이다. TCP/UDP는 계층이 더 적고 더 유연하며 이전 버전과 호환되므로 널리 사용되고 있다.

 

 

 

TCP ,UDP

-TCP는 신뢰성 있는 통신을 위해 사용하는 프로토콜로 높은 신뢰성을 보장하지만 UDP보다 속도가 느립니다.

3way,4way handshaking로 서버와 클라이언트가 1:1로 통신한다. 데이터 흐름제어와 혼잡제어가 이뤄지게 됩니다.

UDP는 비연결형 프로토콜로 손상된 데이터에 대해서 재전송하지 않습니다. 대신에 신뢰성은 낮지만 , TCP보다 속도가 빨라서 스트리밍 같은 서비스에 주로 사용됩니다. 

TCP : 신뢰성 높은 프로토콜 (연결형)

-3way handshaking 으로 연결설정한다.4way handshaking 로 해제한다.

-1대 1통신

3way handshaking :
1. 데이터 전송할게(클라이언트)~
2. 응 보내(서버)
3. 어 알았어(클라이언트) 
4way handshaking :
1. 나 이제 종료할거야(클라이언트)~
2. 잠시, 종료확인해볼게(서버)
3. 알겠어, 종료해 (서버) 
4. 어 알았어(클라이언)

데이터 흐름제어 ( 수신자 버퍼 오버플로우 방지) 및 혼잡제어(네트워크 내 패킷 수가 과도하게 증가하는 현상방지)

데이터 흐름제어 : 송신자와 수신자가 연결형 서비스이므로 수신자의 상황을 확인하면서 적당한 데이터를 전송
혼잡제어: 네트워크 내 수용가능한 패킷수를 정해줌으로 과도하게 증가, 혼잡하는 경우를 미연에 방지한다.

UDP :빠른 프로토콜(비연결형)

-비 연결형 프로토콜. 송신자와 수신자 연결없이 일단 통신한다.

( 어디에 사용될까??? 일방적인 통신이 필요한 경우 : 유튜브라이브 방송.스트리밍방 등 속도가 중요시 되는곳에 사용된다)

-1 대 1통신, 1 대 다 통신, 다 대 다 통신 가능

-전송속도가 빠르다.

-DNS,NFS 등 사용 

 

DNS :  도메인주소를 IP 주소로 변환해주는 시스템 
도메인이름 시스템 으로 UDP는 클라이언트가 도메인 이름을 IP주소로 확인하기 위해 DNS 서버에 요청을 보내는 DNS 쿼리에 일반적으로 사용되는 비연결형 경량 프로토콜이다.

DNS 작동 순서 

첫번째로 URL 입력하면 ,ISP가 관리하는 DNS 해석기에 요청을 라우팅 시킵니다. 
(도메인 주소를 입력하면 내가 가입된 통신사(=ISP)에 각 DNS 해석기를 가지고 있다.)

그 다음에 DNS 해석기가 루트서버에 top-level의 서버 주소를 요청하고요, 그 다음에 top-level에서 second-level에서 , sub DNS server 이렇게 해서 최종적으로 ip 주소를 얻게 됩니다. (ex.WWW.NAVER.COM 을 검색하면 먼저 COM을 찾고 그 다음 NAVER를 찾는다.)

 

 

 

IP: 인터넷 프로토콜(인터넷에서 데이터 전달 프로토콜)

IP 는 인터넷망을 통해 패킷을 전달하는 프로토콜입니다. 비연결성과 비신뢰성의 특징을 가지는데요 .

비연결성은 패킷을 보내는 길을 정하지 않는 것이고, 비 신뢰성은 패킷의 완전한 전달을 보장하지 않는 것입니다. 

-비 신뢰성 : IP는 프로토콜일 뿐이고 보낸 데이터의 흐름에 관여하지 않는다. 

UDP랑 비슷하지만 UDP는 상위 계층에서 작동하는 프로토콜 
IP는 완전히 갔는지 보장을 확인하고 싶을때에는 ICMP라는 프로토콜을 사용한다.그 외에도 
IGMP : 멀티캐스트 그룹 구성원을 관리하는데 사용되는 네트쿼으 프로토콜
ARP: IP 주소를 MAC주소에 매핑하는데 사용되는 프로토콜
RARP:  MAC주소를 IP주소에 매핑하는데 사용되는 프로토콜

 

 

 

728x90

'CS > 네트워크' 카테고리의 다른 글

로드밸런서  (0) 2023.04.11