네트워크 : 프로토콜














프로토콜 이라 하면 알면서도 모르면서도 알아듣긴 하겠지만 설명은 못할 것 같은 내꺼아닌 내꺼같은 말이다.

프로토콜 이란 컴퓨터간에 정보를 주고받을 때의 통신방법에 대한 규칙과 약속 이다. 정보기기 즉 컴퓨터끼리 또는 컴퓨터와 단말기 사이 등에서 정보교환이 필요한 경우, 이를원할하게 하기 위하여 정한 여려가지 통신규칙과 방법에 대한 약속 즉 통신의 규약을 의미 [두산백과] 하는건지 뭔지는 못알아 듣겠고…. 쉽게말해서 프로토콜은 컴퓨터끼리 사용하는 언어다.







 나는 한국말을 하는데 상대는 크메르어를 하면 의사소통이 안되듯이 컴퓨터 사이에서도 통신방법에 대한 규칙이 있어야 하고 이걸 프로토콜이라고 한다. 한만디로 인터넷이 되는 모든 PC는 TCP/IP 라는 같은 언어(프로토콜)를 사용하고 있어서 통신이 가능한 것이다.
 TCP/IP 말고 아는 프로토콜이 하나 더 있는데 바로 IPX
 Internetwork Packet Exchange 의 약자로 IPX/SPX 프로토콜 스택안에있는 OSI 모델 네트워크 계층프로토콜로 어쩌고 는 모르겠고 예전 PC방에서 스타할때 쓰던 통신용 프로토콜이다. (인터넷이 안되도 가능했었지)

대표적인 프로토콜을 정리해보자
TCP/IP - 인터넷용 프로토콜
IPX - 아몰랑 스타할땐 이거 쓰더라
Share:

네트워크 : 이해하기 쉬운 OSI 7계층



















OSI 7계층
(Open System Interconnection 7 Layer)
통신관련 국제표준기구 ISO 에서 통신을 표준화 해서 효율성을 높여보자고 7개 계층을 만든 것이다. 데이터의 흐름을 보자고 만든 것이다. '왜 그런지 모르겠는데 통신이 안되~' 이럴 때 어디에서 문제가 있는지 한 단계 한 단계 확인할 수 있는 기준이 되기도 하며 L3,L4 스위치 등에 대한 개념이기도 하니 실제 업무에 잘 활용될 수 있다. 그러니 간단하게만 알아두자.


7계층 : 어플리케이션 계층 (Application Layer)
 - 유저와 가장 가깝다. 사용자가 사용하는 네트워크 프로그램 정도로 생각하면 된다.
  ex) Explorer, Chrome
 - HTTP(80), FTP(20,21), Telnet(23), SMTP(25), DNS(53) 등

6계층 : 프레젠테이션 계층 (Presentation Layer)
 - 전송하는 데이터의 구성방식을 결정한다.
  ex)데이터변환, 압축, 암호화 등
 - GIF, JPEG, ASCII 등

5계층 : 세션계층 (ession Layer)
- 통신하는 host간 연결을 하고 통신중 연결을 유지시켜준다.
- 세션체결, 통신방식

4계층 : 트랜스포트 계층   (transport Layer )
 신호를 분할하고 도달전에 다시 합치는 과정을 통해 에러와 경로를 제어한다.
ex) Port번호, 전송방식(TCP/UDP) 등을 결정

3계층 : 네트워크 계층 (Network Layer)
- 경로선택, 라우팅, 논리적주소(IP)를 정의 하여 패킷을 전달하는 역할을 한다.
- 라우팅 프로토콜을 사용해 최적경로를 선택한다.

2계층 : 데이터 링크계층 (Data Link Layer)
- 물리적 주소(MAC) 을 지정하여 통신흐름을 관리한다.

1계층 : 물리 계층  (Physical Layer )
- 전기적신호 나가는 물리적 장비정도
 ex) 케이블, 허브(패킷을 모든 디바이스에 전달 Flooding)
Share:

네트워크 : MAC주소란?

MAC 주소 (Mac Address)


 네트워크 상에서 서로를 구분하기위하여 Device 마다 할당된 물리적인 주소로 인터넷이 가능한 장비(PC, 휴대폰등)들이 가지고있는 물리적인 주소라고 생각하면 된다.  Mac 주소는 12자리 숫자로 구성되어 있으며 숫자중 앞의 6자리(24bit)는 벤더(제품제조사)에 할당되며 나머지6자리(24bit) 는 각 벤더에서 제품에 할당한다. 
※ 통신을 위해서는 MAC주소를 알아야 하고 IP주소를 가지고 MAC주로를 알기위해 IP주소를 MAC으로 바꾸는 ARP(Address Resolution Protocol) 과정이 필요하다.

유니캐스트 / 브로드캐스트 / 멀티캐스트

 네트워크 통신 방식에 다른 구분으로 일대일 으로 통신을 하느냐 전체를 대상으로 하느냐 특정 대상을 대상으로 하느냐 에 따른 구분이다.

유니캐스트

일대일 통신으로  출발지와 목적지가 정확해야 한다. MAC <=> MAC     받는입장에서 자신의 MAC 과 비교하여 동일하지 않으면 해당 통신을 받지 않기 때문에 CPU 성능을 저하시키지 않는다. 자신과 비교하여 동일하면 CPU로 해당프레임을 올려서 통신을 할 수 있다.

브로드캐스트

같은 네트워크에 있는 모든 장비들에게 보내는 통신이다. 아파트 관리사무소 방송 같은 것으로 이해하면 쉬운데 듣고 싶은 방송만 듣는게 아니듯이, 해당 네트웍에 있는 PC들이 신호를 받고 싶던 말던 무조건 받는다.  (자신의 MAC과 비교해서 동일하지 않으면 통신하지 않는 유니캐스트와 차이가 있음) 이렇게 무조건 받다보니 나에게 필요한정보인지 확인하는 과정에서 CPU를 사용하게 된다. 때문에 과도한 브로드캐스트는 네트워크및 PC 성능을 떨어뜨릴 수 있다.
주로 상대 IP는 알지만 MAC 을 모를경우에 사용하게 되는데 쉽게말해 방송에 "김똘똘집이 어디야?" 하면 김똘똘이 "이게 우리집 주소야~" 하면서 주소를 전달 하는 것 이다.  (위에서 말한 ARP 과정이 브로드캐스트를 통해 IP로 MAC 을 알게되는 것)

멀티캐스트

여러명 에게 보내야할 경우 (예 100명)에 사용하는 방식으로 유니캐스트와 브로드캐스트를 합쳐놓은 듯한 개념이다. 유니캐스트는 MAC을 모두 확인해서 같은걸 100번 보내야 하니 수량이 많을 수록 네트웍 부하가 커지고, 멀티캐스트는 해당 네트웍 전체에 보내게 되니 관련없는 PC 에서는 CPU 사용률이 증가하게되는 문제점이 있다.  멀티캐스트는 특정 그룹을 지정해서 해당 그룹원에만 보내는 방식이다.  (스위치나 라우터가 멀티캐스트 방식을 지원해야한다)



요약

-MAC주소 :  인터넷 가능한 장비(TCP/IP통신을 하는) 가 가지고 있는 물리적인 주소이다.
-유니캐스트 :  목적지주소를 하나만 적어서 특정한 한 PC 에게만 보내는 방식이다.
-브로드케스트 : 도메인(영역) 안에있는 모든 PC들에게 한번에 전송하는 방식으로 CPU에 인터럽트를 걸기때문에 수신측에서 PC성능 낮아질 수 있다.
-멀티캐스트 : 원하는 그룹에만 전송하는 방식이다. 유니캐스트보다 적은 네트웍 부하를 가지고 멀티캐스트로 인한 수신불필요 PC에서의 CPU 성능에 영향을 끼치지 않는다.


출처: tistory.com [날씬한아빠곰]
Share: