devkobe24.com
AWS
Algorithm
2024
Archive
AWS_archive
CPP_DS
CS_archive
DataStructure
Database
HackTheSwift
Java_archive
Leet-Code
MySQL
Network_archive
OS
Post
Read English Book
SQL_archive
Spring & Spring Boots
TIL
Web
CS
2024
DB
Interview
Java
Java多識
Java
Network
2024
SQL
2024
Spring
Home
Contact
Copyright © 2024 |
Yankos
Home
>
Archive
> Network_archive
Now Loading ...
Network_archive
🌐[Network] 시스템의 구분
시스템의 구분 네트워크를 구성하는 시스템이 반드시 일반 컴퓨터처럼 복잡한 기능을 수행해야 하는 것은 아니지만, 데이터 전송 기능을 포함하여 일정 정도의 컴퓨팅 기능을 보유합니다. 네트워크 시스템은 수행 기능에 따라 다음과 같이 다양한 명칭으로 부를 수 있습니다. 노드 노드(Node)는 컴퓨터 이론 분야에서 특정 시스템을 가리키는 가장 일반적인 용어로 사용됩니다. 인터넷에서도 상호 연결된 시스템을 표현할 수 있는 가장 포괄적 의미로 사용되므로 데이터를 주고 받을 수 있는 모든 시스템을 통칭합니다. 노드는 인터넷 내부를 구성하는 라우터와 인터넷 바깥쪽에 연결되어 데이터를 주고받는 호스트로 구분됩니다. 라우터 라우터(Router)는 인터넷 내부를 구성하며, 기본으로 데이터 전송 기능을 포함합니다. 라우터의 주요 역할은 데이터 중개 기능이며, 인터넷 바깥쪽에 연결된 호스트들 사이의 데이터 전송이 인터넷 내부에서 최적의 경로를 통하여 이루어지도록 합니다. 호스트 호스트(Host)는 인터넷 바깥쪽에 연결되어 일반 사용자들의 네트워크 접속 창구 역할을 합니다. 일반적인 컴퓨팅 기능을 갖춘 호스트는 네트워크 응용 프로그램을 실행할 수 있고, 사용자는 이 프로그램을 이용하여 다양한 인터넷 서비스를 제공받습니다. 호스트는 호스트 사이에 제공되는 서비스를 기준으로 클라이언트와 서버로 나눌 수 있습니다. 클라이언트와 서버 클라이언트(Client)는 임의의 인터넷 서비스를 이용하는 응용 프로그램이고, 서버(Server)는 서비스를 제공하는 응용 프로그램입니다. 클라이언트와 서버의 개념은 서비스 단위로 이루어지므로 임의의 호스트가 클라이언트나 서버로 고정되지는 않습니다. 이용하는 서비느싀 종류에 따라 클라이언트가 될 수도 있고, 서버가 될 수도 있습니다. 그러므로 특정 서비스틑 기준으로 상태적인 관점에서 클라이언트와 서버라는 용어를 사용합니다. 일반적으로 응용 프로그램 혹은 서비스 단위가 아닌 호스트 단위로도 클라이언트와 서버를 사용하기도 합니다. 즉, 다양한 서비스를 제공하는 목적으로 특화된 호스트의 경우 호스트 자체를 서버라 부르기도 합니다. 서버는 클라이언트보다 먼저 실행 상태가 되어 클라이언트의 요청에 대기해야 합니다. 그리고 영원히 종료하지 않으면서 클라이언트의 요청이 있을 때마다 서비스를 반복해서 제공합니다.
Archive
· 2024-02-21
🌐[Network] 표준화
서로 다른 시스템이 상호 연동해 동작하려면 “표준화(Standardization)” 라는 “연동 형식 통일”이 필요합니다. 예를 들어, 프린트 용지를 생각해봅시다. 일반적으로 프린터와 프린트 용지를 만드는 회사는 다릅니다. 하지만 사전에 A4 규격이라는 통일된 틀을 만들어두었기 때문에 서로 다른 회사에서 생산한 프린터와 프린트 용지를 자유롭게 사용할 수 있습니다. 현대 산업사회가 눈부시게 성장한 배경에는 증기기관의 개발에 따른 에너지 동력원의 발전이 있었습니다. 지금은 인간의 노동력이라는 한계를 넘어 인공지능으로 대표되는 새로운 차원의 사회 발전 단계인 4차 산업혁명이 진행되고 있습니다. 그러나 이와 다른 관점에서 더 근원적인 발전 배경을 살펴보면, 표준화 원리를 바탕으로 한 레고의 산업 전반에 존재해왔기 때문임을 알 수 있습니다.
Archive
· 2024-02-15
🌐[Network] 인터넷
인터넷 “인터넷(Internet)” 은 전세계의 모든 네트워크가 유기적으로 연결되어 동작하는 통합 네트워크입니다. 인터넷에서 사용되는 시스템, 인터페이스, 전송 매체, 프로토콜들은 그 종류가 매우 복잡하고 다양하지만, 데이터 전달 기능에 한해서 공통으로 IP(Internet Protocol) 프로토콜을 사용합니다. 즉, ISO의 OSI 7계층 모델에서 계층 3인 네트워크 계층의 기능을 IP 프로토콜이 수행하며 “인터넷” 이라는 용어는 “IP” 의 첫 단어인 “Internet” 에서 유래했습니다.
Archive
· 2024-02-15
🌐[Network] 네트워크
네트워크 통신용 전송 매체로 연결된 여러 시스템이 프로토콜을 사용하여 데이터를 주고받을 때, 이들을 하나의 단위로 통칭하여 “네트워크(Network)” 라 부릅니다. 일반적인 “컴퓨터 네트워크” 에서는 물리적인 전송 매체로 연결된 컴퓨터들이 동일한 프로토콜을 이용해 서로 데이터를 주고받습니다. “소규모 네트워크” 가 모여 “더 큰 네트워크” 를 구성할 수 있는데, “네트워크” 끼리는 “라우터(Router)”라는 중개 장비를 사용해서 연결합니다.
Archive
· 2024-02-14
🌐[Network] 프로토콜.
🌐[Network] 프로토콜. 논리적으로 상호 연동되는 시스템이 전송 매체를 통해 데이터를 교환할 때는 표준화된 대화 규칙을 따르는데, 이 규칙을 프로토콜(Protocol) 이라고 합니다. 일반적으로 프로토콜은 상하 관계가 아닌 동등한 위치에 있는 시스템 사이의 규칙이라는 측면이 강조되어 인터페이스와 구분됩니다. 인터페이스는 아래 그림과 같이 두 시스템이 연동하기 위한 특정한 접촉 지점(Access Point) 을 의미하는 경우가 많지만, 프로토콜과 비교하여 인용될 때는 상하 개념이 적용됩니다. 즉, 나중에 배우게 될 네트워크의 계층 모델 구조에서 인터페이스는 상하 계층 사이의 관계를 다루고, 프로토콜은 동등 계층 사이의 관계를 다룹니다. 일반적으로 프로토콜은 주고받는 데이터 형식과 그 과정에서 발생하는 일련의 절차적 순서에 무게를 둡니다.
Archive
· 2024-02-10
🌐[Network] 전송매체.
🌐[Network] 전송매체 시스템끼리 정해진 인터페이스를 연동해 데이터를 전달하려면 물리적인 전송 수단인 전송 매체(Transmission Media)가 반드시 있어야 합니다. 전송 매체는 사람의 눈으로 볼 수 있는 동축케이블을 포함하여 소리를 전파하는 공기, 무선 신호 등 다양하게 존재합니다. 인터페이스는 시스템 간의 물리적인 연동을 위한 논리적인 규격이고 인터페이스로 정해진 규격은 전송 매체를 통해 물리적으로 구현되며, 시스템끼리 데이터 정송을 가능하게 합니다.
Archive
· 2024-02-08
🌐[Network] 인터페이스(Interface).
🌐[Network] 인터페이스(Interface). 인터페이스(Interface)는 시스템과 시스템을 연결하기 위한 표준화된 접촉 지점을 의미하며 하드웨어적인 관점과 소프트웨어적인 관점이 모두 존재합니다. 하드웨어적인 관점에서의 인터페이스(Interface). 컴퓨터 본체와 키보드를 연결하여 제대로 동작하게 하려면 키보드의 잭을 본체의 정해진 위치에 꽂아야 합니다. 이렇게 하려면 상호간의 데이터 교환을 위한 RS-232C, USB 등과 같은 논리적인 규격뿐만 아니라, 잭의 크기와 모양 같은 물리적인 규격도 표준화되어야 합니다. 소프트웨어적인 관점에서의 인터페이스(Interface) 프로그래밍 언어에서 함수 설계자는 함수 이름과 매개변수를 표준화하여 정의해야 합니다. 함수 사용자는 이 정의에 맞게 함수 이름과 인수를 지정하여 사용할 수 있습니다. 인터페이스 구조. 인터페이스를 논리적인 상하 구조의 개념으로 이해할 필요는 없습니다. 인터페이스를 양방향으로 데이터를 주고받는 경우와 한쪽에서 다른 쪽의 단방향으로 데이터를 보내는 경우로 나눌 수 있습니다.
Archive
· 2024-02-05
🌐[Network] 시스템(System).
🌐[Network] 시스템(System). 일반적으로 말하는 시스템(System) 내부 규칙에 따라 자율적으로 동작하는 대상을 가리킵니다. 자동차, 커피 자판기, 컴퓨터, 마이크로프로세서, 하드디스크 등과 같은 물리적인 대상도 시스템. 신호등으로 교통을 제어하는 운영 시스템, MS 윈도우즈 등의 운영체제, 프로그램의 실행 상태를 의미하는 프로세스와 같은 소프트웨어적인 대상들도 시스템. TIP: 네트워크 환경에서 동작하는 임의의 시스템은 다른 시스템과 데이터를 교환하는 기능이 필수적입니다. 시스템의 동작에 필요한 외부 입력이 있을 수 있으며, 내부 정보와 외부 입력의 조합에 따른 출력(시스템 실행의 결과물)이 있을 수 있습니다. 작은 시스템이 여러 개 모여 더 큰 시스템을 구성할 수 있으므로 크기를 기준으로 시스템을 나누지는 않습니다. 우리가 알고 있는 인터넷은 수많은 소규모 네트워크들이 서로 연동되는 반복적인 과정을 거쳐서 형성된 거대 연합체의 네트워크를 의미합니다.
Archive
· 2024-02-05
🌐[Network] 네트워크 기초 용어.
🌐[Network] 네트워크 기초 용어. 네트워크를 이해하려면 시스템, 인터페이스, 전송 매체, 프로토콜, 인터넷과 같은 용어를 먼저 이해해야 합니다. 네트워크(Network) 하드웨어적인 전송 매체(Transmisson Media)를 매개로 서로 연결되어 데이터를 교환하는 시스템(System)의 모음. 인터페이스(Interface) 시스템과 전송 매체의 연결 지점에 대한 규격. 프로토콜(Protocol) 소프트웨어적으로 동작하는 통신 규칙. 표준화(Standardization) 인터페이스와 프로토콜은 서로 다른 시스템을 상호 연동해 동작시키기 위함이니 반드시 연동 형식의 통일이 필요하고 이를 표준화라고 합니다. 위 그림은 여러 시스템이 전송 매체로 연결되어 네트워크를 구성한 예입니다. 시스템은 반드시 일반 컴퓨터일 필요는 없으며, 보통 컴퓨팅 기능을 보유한 네트워크 장비들을 의미합니다. 그림과 같은 네트워크의 가장 바깥쪽에 스마트폰을 포함한 일반 사용자들의 컴퓨터가 연결되어 데이터 교환 작업을 수행합니다. 시스템들은 물리적으로 공유하는 전송 매체에 의하여 서로 연결되지만, 시스템이 전송 매체를 통해 데이터를 교환하려면 반드시 표준화된 프로토콜을 사용해야 합니다. 우리가 알고 있는 인터넷은 IP(Internet Protocol)라는 네트워크 프로토콜이 핵심적인 역할을 하는 네트워크 집합체입니다. 여기서 IP는 프로토콜의 의미가 포함된 약자이지만 보통 IP 프로토콜이라고 부릅니다.
Archive
· 2024-02-03
🌐[Network] 패킷(Packet)
🌐[Network] 패킷(Packet)이란? 패킷(Packet)이란 네트워크를 통해 전송되는 데이터의 작은 단위입니다. 정보 통신에서 데이터는 큰 파일이나 메시지로부터 분할되어 패킷 형태로 변환되며, 각 패킷은 전송을 위해 필요한 정보를 포함합니다. 이 정보에는 목적지 주소, 출발지 주소, 데이터 자체, 오류 검출 등이 포함될 수 있습니다. 패킷 기반 전송 방식은 데이터를 더 효율적으로 전송할 수 있게 해줍니다. 각 패킷은 네트워크를 통해 독립적으로 이동하며, 최종 목적지에서 다시 원래의 데이터로 조립됩니다. 이 과정은 데이터 전송의 신뢰성을 높이고, 네트워크 혼잡을 줄이는 데 도움이 됩니다. 패킷 기반 통신은 인터넷을 포함한 다양한 디지털 네트워크에서 널리 사용됩니다.
Archive
· 2024-01-23
🌐[Network] HTTP 통신.
🌐[Network] HTTP 통신이란? HTTP(HyperText Transfer Protocol) 통신은 월드 와이드 웹(World Wide Web)에서 데이터를 주고받는 데 사용되는 주요 프로토콜입니다. 이 프로토콜은 웹 서버와 클라이언트(대게 웹 브라우저)간의 통신을 위해 설계되었습니다. 🌐 HTTP 통신의 주요 특징. 1. 클라이언트-서버 모델 : HTTP는 클라이언트-서버 모델을 따릅니다. 클라이언트(예: 웹 브라우저)는 서버에 요청(Request)을 보내고, 서버는 이에 대한 응답(Response)을 반환합니다. 2. 무상태성(Stateless) : HTTP는 무상태 프로토콜입니다. 즉, 각 요청은 독립적이며, 서버는 이전 요청에 대한 정보를 저장하지 않습니다. 이는 통신을 단순화하지만, 세션 관리를 위해 쿠기와 같은 메커니즘을 사용해야 합니다 3. HTTP 메소드 : HTTP는 다양한 메소드(GET, POST, PUT, DELETE 등)를 사용하여 리소드(웹 페이지, 이미지, 파일 등)에 대한 다양한 작업을 수행할 수 있습니다. 4. 확장 가능 : HTTP 헤더를 통해 프로토콜을 확장할 수 있습니다.이를 통해 메타데이터, 캐싱 정책, 인증 정보 등을 전송할 수 있습니다. 🌐 HTTP 작동 원리. 1. 요청 시작 : 사용자가 웹 브라우저에서 URL을 입력하거나 링크를 클릭하면 HTTP 요청이 시작됩니다. 2. 서버로의 요청 전송 : 웹 브라우저는 해당 서버의 주소를 찾고(도메인 이름 시스템을 통해 IP 주소를 확인)해당 서버에 연결하여 HTTP 요청을 전송합니다. 3. 서버 처리 및 응답 : 웹 서버는 요청을 받고 처리한 뒤, 요청된 리소스(HTML 페이지, 이미지, 파일 등) 또는 오류 메시지, 리디렉션 정보 등을 포함하는 HTTP 응답을 보냅니다. 4. 콘텐츠 렌더링 : 클라이언트(웹 브라우저)는 응답을 받고, 그 내용을 해석하여 사용자에게 표시합니다. 예를 들어, HTML 문서가 반환되면 브라우저는 이를 파싱하여 화면에 웹 페이지로 렌더링합니다. 5. 연결 종료 : 통신이 완료되면 TCP 연결이 종료됩니다. HTTP/1.1에서는 지속 연결(keep-alive)을 통해 여러 요청과 응답을 같은 연결로 처리할 수 있습니다. 🌐 HTTP 버전. HTTP/1.x : 가장 널리 사용되는 버전으로, 각 요청/응답마다 별도의 연결을 맺습니다(HTTP/1.0) 또는 지속 연결을 사용합니다(HTTP/1.1) HTTP/2 : 성능 향상을 위해 도입된 버전으로, 여러 요청을 동시에 하나의 연결로 처리할 수 있는 멀티플렉싱, 헤더 압축 등의 기능을 제공합니다. HTTP/3 : 최신 버전으로, UDP 기반의 QUIC 프로토콜을 사용하여 연결의 설정 시간을 단축하고, 패킷 손실에 더 강한 성능을 보입니다 HTTP 통신은 웹의 기본적인 동작 방식을 정의하며, 현대 인터넷에서 가장 중요한 프로토콜 중 하나입니다.
Archive
· 2024-01-22
🌐[Network] 웹소켓(WebSocket)
🌐[Network] 웹소켓(WebSocket)? 웹소켓(WebSocket)은 웹 브라우저와 서버 간에 양방향 통신을 가능하게 하는 고급 기술입니다. 이는 HTTP 프로토콜에 비해 지속적이고 실시간의 통신을 가능하게 합니다. 🌐 웹소켓의 주요 특징. 1. 양방향 통신 : 웹소켓은 서버와 클라이언트 간의 양방향 통신 채널을 제공합니다. 이는 클라이언트와 서버가 서로에게 데이터를 동시에 보낼 수 있음을 의미합니다. 2. 실시간 통신 : 웹소켓은 실시간 통신을 위해 설계되었습니다. 이는 온라인 게임, 채팅 애플리케이션, 실시간 데이터 스트리밍 등에 매우 유용합니다. 3. 지속적인 연결 : 웹소켓 연결은 한 번 수립되면 지속적으로 유지됩니다. 이는 브라우저가 서버에 연결을 맺은 후 해당 연결을 지속적으로 유지하며 데이터를 교환한다는 것을 의미합니다. 4. 효율적인 데이터 전송 : 웹소켓은 HTTP의 오버헤드를 줄여 효율적인 데이터 전송을 가능하게 합니다. 데이터 패킷이 작고, 연결 수립 후에는 추가적인 헤더 없이 데이터를 전송할 수 있습니다. 🌐 작동 원리. 1. 핸드셰이크 : 웹소켓 연결은 HTTP 요청을 통해 시작됩니다. 이 요청은 서버에 웹소켓 연결을 요청하는 “업그레이드 요청(Upgrade Request)”을 포함합니다. 서버가 이를 수락하면, HTTP 연결은 웹소켓 연결로 “업그레이드”됩니다. 2. 연결 수립 : 핸드셰이크 과정이 성공적으로 완료되면, 웹소켓 연결이 수립됩니다. 이 시점부터 클라이언트와 서버 간에 양방향 데이터 전송이 가능해집니다. 3. 데이터 프레임 교환 : 데이터는 프레임 단위로 교환됩니다. 각 프레임은 텍스트 또는 바이너리 데이터를 포함할 수 있으며, 웹소켓 프로토콜은 이를 신속하게 전송합니다. 4. 연결 종료 : 클라이언트 또는 서버 어느 한 쪽이 연결을 종료하기를 요청할 수 있으며, 연결이 종료되면 더 이상 데이터를 교환할 수 없습니다. 🌐 사용 사례. * 채팅 애플리케이션 : 실시간으로 메시지를 주고받는데 사용됩니다. * 온라인 게임 : 실시간 상호작용과 게임 상태의 빠른 업데이트를 위해 사용됩니다. * 금융 애플리케이션 : 주식 시작의 실시간 가격 업데이트 등에 사용됩니다. * 라이브 스트리밍 : 실시간 비디오 또는 오디오 스트리밍에 사용될 수 있습니다. 웹소켓은 웹의 실시간, 대화형 애플리케이션을 위한 강력한 도구로, 기존의 HTTP 기반 통신보다 더 다이나믹하고 효율적인 방식을 제공합니다.
Archive
· 2024-01-22
<
>
Touch background to close