본문 바로가기

Computer Science/정보보호

네트워크에 대한 이해

프로토콜 
- 본래 의미는 외교에서 의례 또는 의정서
- 톰 마릴이 컴퓨터와 컴퓨터 사이에서 메시지를 전달하는 과정 이라 정의

 

 

프로토콜의 3 가지 요소
①구문 (Syntax) : 데이터의 구조나 포맷을 의미
②의미 (Semantics) : 전송되는 데이터의 각 부분이 무엇을 뜻하는지를 알 수 있게미리 정해둔 규칙 데이터 자체뿐만 아니라 오류 제어 , 동기 제어 , 흐름 제어를 포함
③순서 (Timing) : 어떤 데이터를 보낼 것인지와 얼마나 빠르게 데이터를 보낼 것인지 정의

 

주소 설정 
• 서로 다른 시스템의 두 개체가 통신을 하는 경우 필요

 

순서 제어 (Sequence Control)
• 프로토콜 데이터 단위를 전송할 때 보내는 순서를 명시하는 기능 (연결 지향형(Connection Oriented) 에만 사용)
ex) tcp를 생각해보면 됩니다. 메세지들의 순서를 시퀀스 번호라는걸 가지고 제어를 합니다.


데이터 대열의 단편화 및 재조합 (Fragmentation & Reassembly)
• 대용량 파일을 전송할 때 전송 효율이 높은 작은 단위로 나누어 전송한 뒤 전송받은 시스템에서 이를 재조합해야 함

ex)ip가 다른곳에서 일어납니다. 서로 다른 네트워크에서 2계층 프레임 사이즈가 다르면 단편화(Fragment)를 해야합니다.

 

프로토콜의 기능

캡슐화 - 각 계층의 프로토콜은 헤더를 덧붙히는 작업을 합니다.

 

연결 제어 - 연결 설정 , 데이터 전송 , 연결 해제에 대한 통제 수행

 

흐름 제어 - 속도 차이 때문에 

ex) 받는대가 10MB/bps 밖에 못받는다면 받는 곳이 유실이 됩니다.

송신측은 수신측이 받아들일 수 있는 정도만 조절을 합니다.

 

오류 제어 - 체크섬이나, 다른 것을 통해서 오류가 발견된다면 재전송을 요청합니다.

- 두 개체에서 데이터를 교환할 때 SDU 나 PCI 가 잘못되었을 경우 , 이를 발견하는 기법
- 순서를 검사하거나 특정 시간 안에 받지 못하면 재전송을 요구하는 방식으로 이루어짐

 

동기화 -

- 두 개체 간에 데이터를 전송할 때 각 개체는 특정 타이머 값이나 윈도우 크기 등을 통해
  동시에 정의된 인자 값을 공유하는 것

- 싱크를 맞춘다. 처음에 연결을 맞출 때 합니다.

   - 윈도우: 한꺼번에 보낼 수 있는 데이터 양

 

다중화 
- 통신 선로 하나에서 여러 시스템을 동시에 통신할 수 있는 기법


전송 서비스
- 우선순위 결정 , 서비스 등급과 보안 요구 등을 제어하는 서비스

 

 

네트워크 계층화에 대한 이해

서로 다르게 만들어도 표준모델을 만들어야 합니다.

 

 

 

 

OSI 7계층

허브 - 들어온 포트를 그대로 다른 포트에 보내줍니다.

2계층 - 개체와 개체사이, 홉과 홉사이 라고 합니다.

다음 노드까지 신뢰적으로 전달을 하는 기능입니다.

이더넷,Wifi 가 많이 됩니다.

3계층 - 경로 찾는 라우팅 기능을 합니다.

ip는 흐름제어를 하지 않습니다.

여러 네트워크를 건너가기 때문에 여러조각을 내고 단편화 합니다.

우리가 흔히말하는 스위치는 2계층 스위치입니다.

 

4계층 - tcp는 신뢰성이 있습니다.

udp - 신뢰성이 없습니다.

공통점은 end to end 까지 전달을 해주는 역활을 합니다.

5계층 - 세션 관리를 하기 위한 방법

전이중 방식 - 동시에 보낼 수 있는 것

반이중 방식 - 연결을 되어있지만 한번에 하나만 보냅니다.

tcp/ip 프로토콜에서는 세션을 만들고 없에는 역활을 합니다.

6계층 - 메세지 형식을 보냅니다., 코드

 

7계층 - 응용 프로그램을 전달할 수 있게 합니다.

 

각 계층에서 돌아가는 프로토콜 종류입니다.

 

ARP,RARP는 3계층이라 하기앤 좀 그렇고 2계층과 3계층 사이에 MAC주소변역을 해줍니다.

ex) ip패킷이 만들어지면 2계층 이더넷을 사용한다면

이더넷이 목적지의 MAC주소를 담아줘야 합니다.

 

그러면 ARP를 돌려서 해당 ip에대한 MAC 주소가 뭔지 알아옵니다.

그것 가지고 이더넷 헤더에 목적지 주소에 붙힙니다.

 

RARP - MAC주소를 가지고 ip를 받아오는 프로토콜입니다.

지금은 안쓰입니다. 예전에 디스크가 비싸서 ip를 저장할 수 있는 디스크가 없을 때 어딘가에 담아두고 시스템이 깨어나면 시스템 MAC주소에가서 ip주소를 물어봅니다.

 

ICMP, IGMP - 약간 3계층보다 위에 있습니다.

메세지들이 ip에 와서 ip헤더가 붙고 밑으로 내려갑니다.

 

intenet control message protocol - 제어메세지 기능이 없기 때문에 ip를 도와서 제어메세지를 보내는 프로토콜입니다.

 

시스템이 네트워크에 접속할 때 pin을 씁니다. 이게 ICMP로 돌아가는 애플리케이션 입니다.

 

IGMP(intenet group manage protocol) - ip는 1:1 프로토콜입니다.

멀티케스트 통신도 필요하니 

단톡방에 글을 올리면 다 볼 수있는 것 처럼 그룹을 관리하고 그룹간에 멀티캐스트 통신을 가능하게하는 프로토콜입니다.

 

RIP,OSPF,IGRP - 라우팅 프로토콜입니다.

RIP - 거리 벡터 알고리즘이라서 많이 안쓰입니다.

 

OSPF - 링크상태 프로토콜 입니다.

 

 

TCP/IP 4계층

 

물리 계층 자세히

랜선이라고 하는 RJ-45를 많이 습니다.

8가닥의 구리선을 씁니다.

 

리피터

유선이라는 것이 멀리가다보면 신호가 약해집니다.

증폭시켜서 원래 세기대로 보내주는 장치입니다.

 

허브

요즘에 스위치를 씁니다. 옛날에 쓴 것이 허브입니다.

 

들어온 시그널을 나머지 포트로 전송합니다.

버스라인으로 되어있습니다.

송수신을 할 때 동시에 포트를 전달 할 수 없습니다.

동시에 하려면 허브라인에 충돌이 일어납니다.(효율 낮음)

 

 

2계층 자세히

MAC주소: 이더넷에 2개로 나눠져있다.

MAC계층과 LLC가 있다.

 

MAC주소는 공장에서 나올 때 정해진 주소입니다. 변하지 않습니다.

48비트 6byte로 되어있습니다.

 

 

 

 

 

 

프레임 릴레이 - 2계층 프로토콜

제어를 줄임으로서 고속전송을 합니다.

ATM - 고속에 다양한 기능을 포함하고 있는 2계층 프로토콜입니다.

너무 메세지가 작아서 프레임이라고 안하고 이라고 합니다.

 

 

 

이더넷

이더넷을 가장 많이 씁니다.

 

최소길이가 필요한 이유는 프레임을 인식하기 위해서 입니다.

너무 짧으면 Pad를 고쳐서 좀 늘립니다.

 

 Data가 1,500byte가 될 수 있습니다.

 

목적지 주소가 모두 1이면 브로드캐스팅 패킷이 됩니다.

그러면 현제 모든 LAN이 이 패킷을 볼 수 있습니다.

 

브리지,스위치

2계층장치에서 브리지가 스위치가 되었습니다.

스위치 - 흔히말하는 스위치입니다.

허브는 들어오는 시그널을 나머지 포트에 다 전달해야합니다. 

그러다 보니 충돌이 많이 났습니다.(전송 효율이 떨어짐)

그래서 나온게 L2스위치입니다.

 

스위치는 목적지 주소를 보고 갈곳으로만 보냅니다.

 

 

 

스위칭 방식

 

 

컷스루 - 스위칭 방식입니다.

마치 기차가 기차역에 왔을때 맨 앞에 있는 기차이름을 보면 목적지를 알 수 있습니다.

헤더를 보더라도 긴 프레임이 스위치에 도착하지 않아도 바로 스위칭해서 보내는 것입니다.

 

 

 

저장 후 전송 방식 - 다 저장하고 해석해서 스위칭보냅니다.

속도가 느립니다.

브리지에서는 이 방식만 쓸 수 있습니다.

 

 

 

인텔리전트 스위칭 - 좀더 스마트하게 스위칭을 하는 것 입니다.

 

 

 

 

제공하는 경로의 대역폭에 따른 구분: 반이중 방식, 전이중 방식

요즘에는 전이중 방식을 많이 씁니다.

 

가는거 오는거 충돌이 없어서 전송 거리 제한을 연장합니다.

 

 

 

 

스위치 테이블

스위치도 목적지 주소를 보고 어디로 보낼 것인가를 결정하기 위해서 MAC주소갈곳에 해당하는 포트매핑(MAC테이블) 정보가 있어야 합니다.

 

스위치에 서버가 연결되어 있을 때 (2번포트 연결)

서버에서 보내진 프레임을 보고 -> 2번 포트에 서버가 살고 있다고 매핑을 합니다.

 

클라이언트의 랜 케이블을 스위치의 3번 포트에 꽂았을 경우

클라이언트의 프레임(소스주소)이 스위치에 들어옵니다. -> 3번 포트에 클라이언트가 살고 있다고 매핑을 합니다.

 

ex)서버의 MAC주소를 알고싶다!

192.186.0.100의 MAC주소가 뭐니 라고 브로드케스트를 날리면 됩니다. ->서버가 응답

 

 

 

 

3계층( 중요 )

LAN을 벗어나봅시다.

대표적으로 ip프로토콜이 있습니다.

 

 

ARP

mac주소를 해석해주는 프로토콜 입니다.

 

Ip주소로 -> MAC주소를 알아내는 것입니다..

MAC주소로 -> IP주소를 알아내는 것은 RARP입니다.

 

통신을 할 때 위 계층으로 부터 내려올 것입니다.

3계층 주소는 DNS를 통해서 알았습니다.

3계층에서 2계층으로 갈 때 MAC주소를 이용한 적이 없습니다.

 

그 때 MAC주소를 알아야 하니 ARP를 사용합니다.

 

브로드캐스트를 해서 쫙 뿌립니다.

RARP

 

IP

라우팅을 해주는 프로토콜 입니다.

종단간 전송 서비스를 제공 합니다.

 

 

 

 

 

 

 

728x90

'Computer Science > 정보보호' 카테고리의 다른 글

Windows2012Server Install & DNS 구동  (0) 2021.09.29
DNS를 활용한 정보수집  (0) 2021.09.22
Whois 와 DNS 조사  (0) 2021.09.15
네트워크에 대한 이해 - 2  (0) 2021.09.15
정보보호세계  (0) 2021.09.02