본문 바로가기

Network System/개발자도 궁금한 IT 인프라

네트워크

네트워크 : 정보를 주고 받아야 하는 모든 IT 인프라 장비 간의 물리적, 논리적인 연결

 


1974년 - TCP(Transmission Control Protocol, 전송 제어 프로토콜)

1981년 - IP(Internet Protocol, 인터넷 프로토콜)

1982년 - TCP/IP

 

90년대 초중반쯤에 서계적으로 인터넷 붐이 일어났음

ISDN(Integrated Service Digital Network, 종합 정보 통신망) ->

ADSL(Asymmetric Digital Subscriber Line, 비대칭 디지털 가입자 회선)로 넘어감

 

[ ADSL의 장점 ]

1) 기존의 전화선이나 전화기를 사용해 고속의 데이터 통신이 가능했음

2) 하나의 전화선으로 일반 전화와 데이터 통신을 모두 처리할 수 있음

3) 음성 통신은 낮은 주파수 대역, 데이터 통신은 높은 주파수 대역을 사용해 혼선이 일어나지 않고 통신 속도도 떨어지지 않음

 


<IP 헤더>

<TCP 헤더>

 

[ TCP와 IP가 하나로 묶여서 표준이 된 이유 ]

- IP의 Connectionless Protocol의 특성, 상대방과의 연결 여부에 상관없이 데이터를 보내고 받는다는 뜻

- TCP의 Connection-Oriented의 특성, 상대방이 데이터를 받았음을 보장함

 

IP의 부족한 신뢰성을 TCP를 통해서 채워주어서 TCP와 IP가 하나로 묶이게 되었다.

 


[ 네트워크 장비의 종류 ]

- L1

1) 리피터 : 전기적으로 신호를 증폭시켜주는 장비

2) 더미 허브(dummy hub) : 여러 포트가 동시에 리피터 역할을 수행, 어느 한 포트에 발생된 신호를 모든 포트로 재전송

 

- L2

1) L2 스위치(switch) : MAC주소를 참고하여 데이터를 전달함

> 각각의 포트에 고유한 MAC주소를 가지고 있음

2) 브리지(bridge) : 허브와 허브를 이어서 LAN을 확장해 주는 장비

> 요즘은 스위치가 그 역할을 수행하고 있기 때문에 순수한 의미의 브리지는 없음

 

[ L2스위치에 많이 사용되는 기술 ]

- 루프 방지

루프 : 네트워크에서 1개 이상의 스위치가 존재할 경우 브로드캐스트 패킷이 종료되지 않고 네트워크를 돌아다니며 대역폭을 소진하게 되는 현상이다.

L2 헤더는 IP 헤더와 달리 TTL이 없기 때문에 다른 장비로 전파된 패킷이 계속 반복, 재생산되게 된다.

* TTL(Time To Live) : TTL의 값만큼 패킷이 전파되다 TTL 값이 0이 되면 패킷이 폐기됨

= 루프를 방지하기 위해 STP(Spanning Tree Protocol)를 사용한다.

- VLAN(Virtual Local Area Netowrk)

VLAN : 물리적으로 구분된 여러 개의 LAN 구성을 사용 환경에 맞게 논리적으로 확장할 수 있도록 해주는 기술이다.

VLAN 간에 통신이 필요할 때는 L3 스위치를 통해 라우팅이 되어야 한다.

여러 대의 스위치 간에 VLAN을 구성한 경우에는 해당 도메인에만 패킷을 전달하기 위해서 스위치 간 Trunk를 통해서 패킷에 VLAN 태그를 붙여서 송수신한다.

 

- L3

1) 라우터(Router) : IP주소를 참고하여 데이터를 전달함

2) L3 스위치(switch) : IP주소를 참고하여 데이터를 전달함

> 서로 다른 VLAN에 존재할 경우 L3 스위치를 통해 라우팅해야만 서로 연결이 가능함

 

[ 라우터와 L3 스위치의 차이점 ]

 

라우터와 L3 스위치

라우터(Router) : 네트워크의 연결을 수행하는 장비 L3 스위치(Switch) : 라우터를 스위치내에 수용시켜 네트워크 계층에 동작시킨 장비 - 서로 다른 네트워크끼리 통신하거나 또는 서로 다른 VLAN끼리

apxtt.com

 

- L4

1) L4 스위치 : 시스템 서비스 상태를 모니터링하고 지능적으로 로드밸런싱을 할 수 있는 장비

> 세션을 여러 서버에 나눠줄 수 있는 방법

클라이언트와 서버 양측의 MAC, IP, TCP 정보를 합쳐서 가상 교환기 역할을 수행해 여러 서버에 나눠줄 수 있다.

 

[ 부하분산 방식 ]

- 라운드 로빈 방식(RR) : 만약 3대의 서버가 있다면 3->2->1->1->2->3의 순서로 세션을 연결해줌

- 최소 연결(Least Connection, LC) : 세션이 적은 서버에 신규로 연결해주는 방식

- 응답 시간(Response Time, RT) : 응답 시간이 빠른 서버에 세션을 연결해주는 방식

- hash 방식 : 클라이언트 IP, 포트 정보를 가지고 고유의 hash key를 만들어서 연결해주는 방식

 

[ 세션과 소켓 ]

주로 서버 운영자는 세션이라는 단어를 많이 쓰며 개발자들은 소켓이라는 단어를 많이 씀

- 세션 : 일정 시간 같은 사용자 혹은 애플리케이션으로 부터 들어오는 일련의 요청을 동일 상태로 보고 그 상태를 유지해 주는 논리적 경로

- 소켓 : 논리적 경로인 세션을 이용하는 물리적 경로

 

- L7

1) L7 스위치 : URL, Cookie, Contents와 같은 애플리케이션 정보를 바탕으로 로드밸런싱, 웹 가속, SSL 가속 기능을 제공하는 장비

> L4/7 기능을 합쳐서 ADC(Application Delivery Controller) 스위치라고도 부름

 

> 웹 캐싱 : 자주 호출되는 오브젝트를 L7 스위치에 캐싱하여 전달하는 기능, 웹 서버까지 전달되지 않으므로 웹 서버의 부하를 감소시켜 주며 응답 시간을 개선하는 효과

> 웹 압축 : 데이터 전송시 L7 스위치가 오브젝트를 압축하는 기능, 네트워크 트래픽이 감소되고 전송 시간이 짧아지지만 압축 작업에 따른 L7 스위치의 부하가 걸림

> 코드 압축(minification) : js, css, json, html을 결과값에 영향 없이 압축해 주는 기능으로, 주로 공백, 주속 등을 제거하게 됨, 웹 압축과는 다르게 압축, 해제에 별다른 부하가 발생하지 않는 장점이 있는 반면에 압축률이 상대적으로 낮고 클라이언트에 아축된 소스가 내려감에 따라 오류로 이한 디버깅 시에 소스 해석이 어려움

> SSL 가속

'Network System > 개발자도 궁금한 IT 인프라' 카테고리의 다른 글

클라우드  (0) 2021.02.28
가상화  (0) 2021.02.28
백업, 데이터 보호  (0) 2021.02.24
서버의 스토리지  (0) 2021.02.23
메인프레임, 유닉스, x86  (0) 2021.02.21