티스토리 뷰

카테고리 없음

네트워크란 무엇인가?

zzangyeon 2021. 10. 3. 18:38

* 네트워크란?

노드들이 데이터를 공유할 수 있게 하는 디지털 전기 통신망의 하나이다.

분산되어 있는 컴퓨터를 통신망으로 연결한 것을 말한다. 

네트워크에서 여러 장치들은 노드 간 연결을 사용하여 서로에게 데이터를 교환한다.

 

* 인터넷이란?

여러가지 데이터를 공유핟록 구성된 전세계를 연결하는 네트워크이다.

 

* www는 인터넷을 통해 웹과 관련된 데이터를 공유하는 것.

 

[네트워크의 분류]

-크기에 따른 분류

 

LAN (local area network)

근거리 통신망 - 가까운 지역을 하나로 묶은 네트워크

 

WAN(wide

원거리 통신망 - 멀리 있는 지역을 한데 묶은 네트워크

가까운 지역끼리 묶인 lan 과 lan을 다시 하나로 묶은 것.

 

-연결 형태에 따른 분류

star형

중앙 장비에 모든 노드가 연결된 형태 - 가정집에서 공유기를 통해 핸드폰 컴퓨터 등등 연결된 형태. 만약 공유기가 고장이 난다면..? 끝.

 

mesh형

여러 노드들이 그물처럼 서로 연결되어 있는 형태.

 

혼합형 - 실제로는 여러 형태를 혼합한 형태

 

- 네트워크 통신방식

*유티캐스트

특정 대상과 1:1 통신하는 방식

*멀티캐스트

특정 다수와 1:N 통신하는 방식

*브로드캐스트

네트워크에 있는 모든 대상과 N:N 통신하는 방식

 

-네트워크 프로토콜

일종의 약속,규약,양식

 

네트워크에서 노드와 노드가 통신할 때 어떤 노드가 어느 노드에게 어떤 데이터를 어떻게 보내는지 작성하기 위한 양식

 

택배는 택배만의 양식(송수신자의 주소 입력), 편지는 편지만의 양식, 전화는 전화만의 양식(010-0000-0000 입력)

 

각 프로토콜들도 해당 프로토콜만의 양식이 존재한다.

 

*가까운 곳과 연락할때 - Ethernet프로토콜 (MAC주소)

*멀리 있는 곳과 연락할때 - ICMP ,IPv4,ARP (IP주소)

*여러가지 프로그램으로 연락할 때 - TCP,UDP(포트번호)

 

- 여러프로토콜들로 캡슐화 된 패킷!

 

-cmd창 -  traceat ip주소 입력!

 프로토콜 캡처 프로그램 - wireshark

 

-------------------------------------------

 

[네트워크 계층 모델]

TCP/IP 모델(실무적)  / OSI 7 layer (이론적,논리적)

 

네트워크를 통해 전달되는 데이터를 패킷이라한다.

형식화된 블록이다. 

패킷은 제어 정보와 사용자 데이터로 이루어지며 사용자 데이터는 페이로드라고도 한다.

 

여러 프로토콜들로 캡슐화된 패킷 -  헤더/ 페이로드/푸터

ex) Ethernet / IPv4/ TCP/HTTP/

encapsulation(캡슐화) 7->1/ 디캡슐화 1>7

 

계층별로 이름이 다른 PDU(protocol data unit)  3계층의 ip가 헤더인 pdu도 패킷   -   일반적으로 데이터 송수신시 사용하는 단위인 패킷은 그냥 통칭해서 사용하는 말.  (서로 의미가 다르다)

*PDU - 비트(1계층)-프레임(2계층) - 패킷(3계층) - 세그먼트(4계층) - 메세지(567계층)

 

 

 

<2계층에서하는일>

하나의 네트워크 대역, 즉 같은 네트워크 상(랜)에 존재하는 여러 장비들 중에서

어떤 장비가 어떤장비에게 보내는 데이터를 전달

오류제어, 흐름제어 수행 

2계층은 하나의 네트워크 대역 랜 에서만 통신할 때 사용한다.

다른 네트워크와 통신할 때는 항상 3계층의 도와주어야한다.

3계층의 주소와 3계층의 프로토콜을 이용하여야만 다른 네트워크와 통신 가능.

*사용하는 주소 - MAC주소- 물리적 주소- LAN 통신시 사용하는 주소.   매체 접근 통제 media access control 주소

*프로토콜 - Ethernet프로토콜   헤더 - 목적지mac주소/보내는이 mac주소/페이로드의 프로토콜에 대한 정보 (3계층에서 서 내려온 데이터에 대한 프로토콜: ipv4  or arp등등)

* 스위치..?

 

<3계층에서하는일>

다른 네트워크 대역 즉, 멀리 떨어진 곳에 존재하는 네트워크까지 어떻게 데이터를 전달할지 제어하는 일을 담당

발신에서 착신까지 패킷의 경로를 제어.   wan통신

*대표장비 : 라우터 

*사용 주소 : ip주소 

*프로토콜 : ip프로토콜 arp프로토콜 icmp프로토콜

중요 역할 = 최적의 경로를 찾아가는것! - 라우팅 테이블을 이용해서.

 

 -------

<ip주소>

4byte 10진수로 쓴다.... 한자리에 0~ 255까지 쓸 수 있다.

사설ip - 공인 ip  외부와 통신할때는 공인ip로 데이터를 받고 데이터를 받은 공인 ip를 가진 공유기가 각각 노드에게 전달해준다.

--------

 

IPv4 프로토콜

서로 다른 네트워크 상에서 데이터를 교환하기위한 프로토콜

데이터가 정확하게 전달될 것을 보장하지 않는다.

중복된 패킷을 전달하거나 패킷의 순서를 잘못 전달할 가능성도 있다.

데이터의 정확성은  상위계층 TCP에서 보장한다.

 

기본-20바이트(+a)

버전/출발지 ip주소/ 목적지 ip주소

 

***offset** = 기준으로부터 얼마만큼 떨어져 있다. 라는 것을 뜻한다!

---

ICMP 프로토콜

인터넷 제어 메세지 프로토콜

네트워크 컴퓨터 위에서 돌아가는 운영체제에서 오류메세지를 전송 받을때 주로 쓰인다. 

특정 대상과 내가 통신이 잘 되는지 확인하는 프로토콜.

-------

 

통신 과정

네트워크 대역이 바뀔 때마다 이더넷 프로토콜을 다시 작성한다.

 

-----

 

IPv4에서

데이터를 잘개 쪼갠다..

 

-------

 

<4계층에서하는일>

전송계층은 송신자의 프로세스와 수신자의 프로세스를 연결하는 통신 서비스를 제공한다.

전송 계층은 연결 지향 데이터 스트림 지원, 신뢰성,흐름제어, 다중화와 같은 편리한 서비스를 제공한다.

전송 프로토콜 중 가장 잘 알려진 것은 연결지향 전송 방식을 사용하는 전송제어프로토콜 TCP이다.

보다 단순한 전송에 사용되는 사용자 데이터그램 프로토콜 UDP도 있다.

 

-포트번호

프로세스간 통신을 위해 사용

하나의 포트는 하나의 프로세스만 사용 가능하다.

즉 포트번호가 겹치면 안 된다!!

하나의 프로세스가 여러 개의 포트를 사용하는 것은 가능하다.

내 입장에서는 포트번호 하나당 하나의 프로세스만 연결가능하지만 상대방의 여러 포트들이(프로그램들이) 나의 하나의 프로세스에 접근하는건 가능하다.?

특정 프로그램이 사용하는것! 컴퓨터가 아니라.

 

*UDP프로토콜

전송 방식 단순, 신뢰성 낮음, 데이터그램 도착순서가 바뀌고,중복,통보 없는 누락 될 수 있다.

오류의 검사와 수정이 필요 없는 프로그램에서 수행한다. 보통.

 

*TCP프로토콜

프로그램간 통신을 안정적,순서대로,에러없이 신뢰성 있는 교환할 수 있게 한다.

sync - 동기화 플래그 ack - 승인 플래그  fin-종료 플래그

 

통신과정

TCP를 이용한 데이터 통신을 할 때 프로세스와 프로세스를 연결하기 위해 가장 먼저 수행되는 과정이다.

1. 클라이언트가 서버에게 요청 패킷을 보내고

2. 서버가 클라이언트의 요청을 받아들이는 패킷을 보내고

3. 클라이언트는 이를 최종적으로 수락하는 패킷을 보낸다.( 연결 과정에서는 페이로드가 없는 패킷을 주고받는다.)

3way handkshake

=> 1. 연결수립!~

2. 데이터 송수신

-TCP의 연결 상태 변화 -

LISTEN 상태 - 포트번호를 프로그램에서 사용하고 있는 상태 (서버쪽에서) . 클라이언트의 요청을 듣고 있는 상태.  (서버의상태)

ESTABLISHED 상태- 연결수립된 상태 (서버의상태) - 이제 데이터 주고받을 수 있는 상태가 된것!

 

---

NAT와 포트포워딩

NAT - 34개층의 프로토콜을 재기록 -> 보통 사설아이피와 공인아이피를 바꾸는 상황에 많이 쓰이는 기술이다.

포트포워딩 - NAT의 응용. 게이트웨이(외부망)의 반대쪽에 위치한 사설네트워크에 상주하는 호스트에 대한 서비스를 생성하기 위해 흔히 사용된다. 3계층에서..?

 

----

7계층 프로토콜 

*HTTP 프로토콜

문서의 전공을 위해 쓰이며, 오늘날 이미지, 동영상 등 여러종류의 데이터를 MIME로 정의하여 전송 가능하다.

요청과 응답 동작에 기반하여 서비스 제공하는 프로토콜.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함