161. DLL (Dynamic Link Library)
동적 링크 라이브러리로 여러 프로그램이나 응용 프로그램에서 공통적으로 사용되는 함수, 클래스, 변수 등을 포함하는 외부 파일 형식이다. 이 라이브러리는 여러 프로그램 간에 코드와 데이터를 공유하고 재사용할 수 있게 해준다.
DLL의 주요 특징 : 재사용성, 동적 로딩, 코드 및 자원 공유, 동적 링크, 외부 인터페이스 등
DLL은 주로 Windows 운영 체제에서 사용되지만, 다른 운영 체제에서도 비슷한 개념의 라이브러리를 사용할 수 있다. DLL을 사용하면 코드의 재사용성과 유지 보수가 용이해지며, 프로그램 개발과 유지 보수의 효율성을 향상시킬 수 있다.
162. Shared Object
리눅스 및 유닉스 기반 시스템에서 사용되는 동적 라이브러리이다. 윈도우 시스템의 DLL(Dynamic Link Library)에 해당하는 개념이며, 여러 응용 프로그램에서 공통적으로 사용되는 함수, 클래스, 변수 등을 포함하는 외부 파일 형식이다. 다른 이름으로 "Shared Library" 또는 ".so 파일"로도 불린다.
Shared Object의 주요 특징 : 동적 링크, 재사용성과 공유, 심볼 해결(Symbol Resolution), 다양한 프로그래밍 언어에서 지원 등
주로 컴파일된 코드와 필요한 데이터로 구성되어 있으며, 프로그램이 실행 중에 동적으로 로드되어 사용된다. 이를 통해 응용 프로그램 간의 코드 재사용성과 유지 보수의 편리성을 증가시킨다.
163. LAN(Local Area Network)
비교적 가까운 지리적 위치에 있는 컴퓨터 및 네트워크 장치들이 상호 연결된 네트워크를 의미한다. LAN은 집, 학교, 회사, 빌딩 등 작은 지역 내에서 사용되며, 주로 유선(Ethernet 케이블) 또는 무선(Wi-Fi) 기술을 사용하여 컴퓨터, 프린터, 서버, 스마트폰, 태블릿 등의 장치들을 연결한다.
LAN의 주요 특징 : 한정된 지역 내에서 사용, 빠른 데이터 전송 속도, 비교적 낮은 비용, 자원 공유, 쉬운 관리와 유지보수 등
LAN은 작은 규모의 컴퓨터 네트워크를 구성하고자 할 때 주로 사용되며, 일상적인 컴퓨터 사용 환경에서 매우 흔하게 찾아볼 수 있는 유형의 네트워크이다.
164. Gateway
네트워크에서 서로 다른 두 시스템 또는 네트워크 간의 통신을 중계하거나 연결해 주는 장치나 소프트웨어를 가리킨다. 게이트웨이는 네트워크에서 다양한 프로토콜 간에 데이터를 변환하거나 라우팅하며, 서로 다른 네트워크 환경 간의 통신을 가능하게 한다.
게이트웨이의 목적 : 프로토콜 변환, 보안, 로컬 네트워크와 외부 네트워크 연결, 프록시, 데이터 통합 등
게이트웨이는 네트워크에서 중요한 역할을 하며, 서로 다른 네트워크 환경 간의 통신과 데이터 교환을 원활하게 만들어 준다.
165. Router
네트워크에서 패킷(Packet)을 전송하고 수신하는 장치로, 여러 네트워크 간에 데이터를 전달하고 연결하는 역할을 한다. 일반적으로 라우터는 여러 컴퓨터 및 네트워크 장치들이 연결된 네트워크 간에 데이터를 라우팅하는데 사용된다.
라우터의 주요 기능과 특징 : 패킷 전달, 라우팅, 네트워크 주소 변환(NAT - Network Address Translation), 패킷 필터링 및 보안, 다양한 인터페이스 지원, 통신 프로토콜 지원 등
라우터는 주로 인터넷 접속 장치로 사용되며, 집이나 사무실의 네트워크에서 여러 컴퓨터 및 기기들이 외부 네트워크와 통신할 수 있도록 해준다. 또한 라우터는 데이터를 안전하게 전달하고, 여러 장치 간의 원활한 통신을 도와 네트워크 구성을 쉽게 만들어준다.
166. Switch
네트워크에서 여러 디바이스 간에 데이터 프레임을 전달하는 역할을 하는 네트워크 장치이다. 스위치는 여러 컴퓨터, 서버, 프린터, IP 카메라 등과 같은 네트워크 디바이스들을 연결하여 데이터를 전송하고 수신하는데 사용된다.
스위치의 주요 기능과 특징 : 패킷 스위칭(Packet Switching), MAC 주소 테이블 사용, 유니캐스트, 멀티캐스트, 브로드캐스트 지원, 프로토콜 독립성, 대역폭 관리 및 품질 관리, 가상 LAN(VLAN) 지원 등
스위치는 현대의 네트워크에서 핵심적인 역할을 하며, LAN에서 효과적인 데이터 전송과 네트워크 관리를 가능케 한다. 일반적으로 라우터가 다른 네트워크와의 연결을 담당하고, 스위치가 내부 네트워크에서 디바이스들 간의 통신을 관리하는 역할을 수행한다.
167. DNS (Domain Name System)
컴퓨터 네트워크에서 도메인 네임(예: http://www.example.com)을 IP 주소로 변환하거나, 그 반대의 역할을 수행하는 시스템이다. 네트워크에서 컴퓨터나 다른 네트워크 디바이스는 IP 주소를 사용하여 서로 통신한다. 그러나 사람들은 일반적으로 도메인 네임을 사용하여 웹 사이트나 이메일 서버에 접속하려고 한다. DNS는 이렇게 도메인 네임과 IP 주소 간의 매핑을 관리하는 시스템이다.
DNS의 주요 기능과 특징 : 도메인 네임 해석, 계층 구조, 도메인 관리, 캐싱, 분산 시스템 등
DNS는 인터넷에서 핵심적인 역할을 하며, 사용자가 도메인 네임을 통해 웹사이트에 접속하고 이메일을 주고받는 등 다양한 인터넷 서비스를 이용할 수 있도록 해준다.
168. DHCP (Dynamic Host Configuration Protocol)
네트워크에 연결된 장치나 노드에 IP 주소와 기타 관련된 구성 정보를 동적으로 할당해주는 네트워크 관리 프로토콜이다. DHCP는 이러한 구성을 자동화하고 중앙에서 관리한다. 예를 들어, 컴퓨터가 네트워크에 처음 연결될 때, DHCP 클라이언트가 DHCP 서버에 IP 주소를 요청한다. DHCP 서버는 사용 가능한 IP 주소 풀에서 IP 주소를 선택하고, 클라이언트에게 할당한다. 이때, 서브넷 마스크, 기본 게이트웨이, DNS 서버 등의 추가 정보도 함께 전달된다. DHCP는 IP 주소의 효율적인 관리와 네트워크 구성의 간소화에 도움이 된다. DHCP를 사용하면, 네트워크 관리자는 수동으로 IP 주소를 설정하거나 변경할 필요가 없으며, IP 주소의 충돌이나 낭비를 방지할 수 있다.
DHCP의 주요 기능과 특징 : IP 주소 할당, 서브넷 마스크, 기본 게이트웨이, DNS 주소 등 설정, IP 주소 재사용, IP 주소 충돌 방지, 유연성 등
DHCP는 주로 큰 규모의 기업 네트워크, 학교, 카페, 공공 장소 등에서 사용되며, 네트워크 관리를 간편하게 해주고 IP 주소 할당 및 관리를 자동화하여 네트워크 운영을 효율적으로 한다.
169. Subnet
Subnet은 네트워크 안의 작은 네트워크로 큰 네트워크를 더 작은 논리적인 네트워크로 분할하는 것을 의미한다. Subnetting의 주요 기능은 네트워크 내의 데이터 라우팅을 더 효율적이고 안전하게 만드는 것이다. 이것은 IP 주소 공간을 관리하고, 네트워크 트래픽을 관리하며, 보안을 향상시키기 위해 사용된다. 서브넷은 네트워크 IP 주소와 호스트 IP 주소로 나뉘는데, 이를 통해 서로 다른 서브넷 간의 통신을 정의한다.
Subnet은 IP 주소와 subnet mask의 조합으로 구성된다. IP 주소는 인터넷이나 다른 유사한 네트워크에서 통신 프로토콜로 사용되는 주소이다. Subnet mask는 IP 주소의 일부를 네트워크 ID와 호스트 ID로 구분하는 데 사용되는 비트 패턴이다. 네트워크 ID는 subnet을 식별하는 데 사용되고, 호스트 ID는 subnet 내의 개별 장치를 식별하는 데 사용된다.
Subnet mask는 IP 주소와 같은 길이의 32비트 숫자로 표현된다. Subnet mask의 비트는 1과 0으로 구성되어 있다. 1은 네트워크 ID에 해당하는 IP 주소의 비트를 나타내고, 0은 호스트 ID에 해당하는 IP 주소의 비트를 나타낸다. 예를 들어, IP 주소가 192.168.1.100이고 subnet mask가 255.255.255.0이라면, 다음과 같이 표현할 수 있다.
| IP 주소 | 11000000.10101000.00000001.01100100
|------------------- |-----------------------------------------------------
| Subnet mask | 11111111.11111111.11111111.00000000
| 네트워크 ID | 11000000.10101000.00000001.00000000
| 호스트 ID | 00000000.00000000.00000000.01100100
이 경우, 네트워크 ID는 192.168.1.0이고, 호스트 ID는 0.0.0.100이다. 이 subnet에는 0.0.0.1부터 0.0.0.254까지의 254개의 호스트 ID가 할당될 수 있다. 0.0.0.0과 0.0.0.255는 각각 subnet 주소와 브로드캐스트 주소로 예약되어 있다.
Subnet mask를 계산하는 데 도움이 되는 여러 온라인 도구가 있다. 예를 들어, IP Subnet Calculator 또는 서브넷 마스크 계산기 등을 사용할 수 있다. 이러한 도구를 사용하면 IP 주소와 subnet mask를 입력하면 subnet의 네트워크 ID, 호스트 ID, 호스트 수, 브로드캐스트 주소 등의 정보를 얻을 수 있다. Subnetting은 네트워크 설계와 관리에 매우 중요한 개념이다. Subnetting을 통해 네트워크 성능을 향상시키고, 네트워크 보안을 강화하고, 네트워크 리소스를 효율적으로 할당할 수 있다.
서브넷을 사용하는 이유 : 트래픽 분산, 보안 강화, IP 주소 관리, 네트워크 관리 용이성 등
서브넷은 주로 기업 네트워크에서 사용되며, 네트워크 관리자가 서브넷을 설정하고 네트워크 트래픽을 효과적으로 관리할 수 있도록 도와준다. 이는 네트워크의 성능, 보안, 확장성을 향상시키는 데 도움이 된다.
170. Packet
컴퓨터 네트워크에서 데이터를 전송하는 데 사용되는 작은 데이터 조각을 나타낸다. 네트워크에서 데이터를 전송할 때, 큰 데이터를 작은 패킷으로 나누어 전송하고, 수신 측에서는 이러한 패킷을 다시 조립하여 원본 데이터로 복원한다. 이러한 패킷 기반의 통신은 데이터를 효율적으로 전송하고, 오류 복구와 재전송을 용이하게 만들어준다. 패킷 기반 통신은 인터넷과 같은 글로벌 네트워크에서 주로 사용되며, 데이터를 효율적으로 전송하고 네트워크의 효율성과 신뢰성을 향상시킨다. 패킷은 제어 정보와 사용자 데이터로 구성된다. 사용자 데이터는 페이로드(payload)라고도 불리며, 전송되는 실제 데이터이다. 제어 정보는 페이로드를 전달하기 위한 데이터를 제공한다(예: 소스 및 대상 네트워크 주소, 오류 감지 코드 또는 순서 정보). 일반적으로 제어 정보는 패킷 헤더와 트레일러에 포함되어 있다. 패킷 스위칭에서는 전송 매체의 대역폭이 여러 통신 세션 간에 공유되며, 회선 스위칭과 달리 회선은 한 세션의 지속 시간 동안 미리 할당되며 데이터는 일반적으로 연속적인 비트 스트림으로 전송된다. 패킷은 OSI 모델의 3계층인 네트워크 계층에서 프로토콜 데이터 단위(protocol data unit)를 나타낸다. 패킷은 일반적으로 프레임(frame)이라고도 불리는 데이터 링크 계층의 데이터 단위이기도 하다. 패킷은 또한 전송 계층에서 세그먼트(segment) 또는 데이터그램(datagram)이라고도 불린다. 예를 들어 TCP/IP 통신에서 TCP 세그먼트는 하나 이상의 IP 패킷에 포함되며, 각각의 IP 패킷은 하나 이상의 이더넷 프레임에 포함된다.
패킷 개념의 기초는 우편 편지이다. 패킷 헤더는 봉투와 같고, 페이로드는 봉투 안의 전체 내용이다. 푸터는 아래쪽에 서명하는 것과 같다. 패킷을 사용하면 네트워크 디자인은 오류 감지 및 다중 호스트 주소 지정 두 가지 주요 결과를 달성할 수 있다.
패킷은 다음과 같은 구성 요소를 포함할 수 있다.
- 주소 : 네트워크 패킷의 라우팅에는 송신 호스트의 소스 주소와 수신 호스트의 대상 주소가 필요하다.
- 오류 감지 및 수정 : 프로토콜 스택의 여러 계층에서 오류 감지 및 수정이 수행된다. 네트워크 패킷에는 전송 중에 발생하는 오류를 감지하기 위한 체크섬, 패리티 비트 또는 순환 중복 검사가 포함될 수 있다. 송신자에서는 패킷을 보내기 전에 계산이 수행된다. 수신자에서는 체크섬이 다시 계산되고 패킷 내 체크섬과 비교된다.
패킷 스위칭(Packet Switching)은 이러한 패킷을 사용하여 데이터를 전송하는 네트워크 기술이다. 데이터가 여러 개의 패킷으로 나누어져 전송되고, 이러한 패킷은 독립적으로 네트워크를 통해 전송된다. 패킷 스위칭은 전송 매체의 대역폭이 여러 통신 세션 간에 공유되며, 회선 스위칭과 달리 회선은 한 세션의 지속 시간 동안 미리 할당되며 데이터는 일반적으로 연속적인 비트 스트림으로 전송된다.