C# 소켓 프로그래밍 핵심 정리
소켓 프로그래밍 개요
네트워크 통신에서 소켓은 프로세스 간 통신을 구현하는 핵심 기술입니다. TCP/IP 프로토콜을 기반으로 한 소켓 프로그래밍은 다음과 같은 단계로 진행됩니다:
로컬 IP 주소와 포트 확인
통신 프로토콜 선택(TCP/UDP)
소켓 객체 생성
IP 주소와 포트 바인딩
TCP: Listen()으로 연결 대기 / UDP: 직접 데이터 수신
TCP: Accept()로 연결 수락 후 Send ...
6월 18일 16:35에 게시됨
파이썬 I/O 멀티플렉싱 완벽 가이드
I/O 멀티플렉싱은 하나의 프로세스가 여러 파일 디스크립터(네트워크 소켓, 파일 등)의 상태를 동시에 감시할 수 있게 해주는 기술입니다. 커널이 감시 중인 디스크립터의 상태 변화를 감지하면 플래그를 변경하고, 프로세스는 이를 감지하여 읽기 또는 쓰기 작업을 수행합니다.
트리거 방식
레벨 트리거 (Level Triggered)
준비 상태가 된 파일 디스크립터를 프로세스에 ...
6월 15일 02:15에 게시됨
쇄락 문제: 개념, 재현 및 해결 방법
Nginx와 Workerman과 같은 많은 네트워크 서버는 단일 마스터-다중 워커 프로세스 모델을 사용합니다. 마스터 프로세스는 리스닝 소켓을 생성하고 워커 프로세스를 생성하며 관리합니다. 워커 프로세스는 마스터 프로세스가 fork 시스템 호출을 통해 생성되므로 마스터 프로세스의 리스닝 소켓을 상속받아 각 워커 프로세스가 독립적으로 클라이언트 연결을 수신하고 처리 ...
6월 8일 19:08에 게시됨
TCP 및 소켓 기반 네트워크 통신의 핵심 메커니즘 분석
네트워크 통신의 기본 구조와 계층 모델
컴퓨터 네트워크는 복잡한 데이터 전송 과정을 단순화하기 위해 계층적 아키텍처를 사용한다. 주로 두 가지 표준 모델이 존재하며, 각각은 통신의 특정 기능을 명확히 정의한다.
OSI 7계층 모델: 응용계층, 표현계층, 세션계층, 전송계층, 네트워크계층, 데이터링크계층, 물리계층으로 구성되며, 이론적 기준으로 활용된다.
TCP/ ...
6월 8일 18:08에 게시됨
C++ 기반 다중 클라이언트 통신 시스템 구현
1. 시스템 개요
본 문서는 C++로 구현된 다중 클라이언트 통신 시스템에 대한 기술 노트입니다. 이 시스템은 TCP 소켓을 기반으로 하는 클라이언트-서버 아키텍처를 채택하며, 다중 클라이언트의 동시 접속과 메시지 브로드캐스트 기능을 제공합니다. 멀티스레딩 기법을 활용하여 동시성을 처리합니다.
2. 시스템 아키텍처
2.1 파일 구조
├── Server.h
├── Server.cpp
├ ...
6월 2일 19:45에 게시됨
Java 네트워크 프로그래밍 핵심 정리
네트워크 프로그래밍은 웹 개발과 다릅니다. 웹 사이트를 만드는 것이 아니라, 서로 다른 위치에 있는 컴퓨터들이 데이터를 주고받을 수 있도록 연결하는 기술입니다. 통신 규약(프로토콜)을 통해 데이터 전송 규칙을 정하고, 하드웨어와 소프트웨어 인터페이스를 구현하여 노드 간 정보 교환을 가능하게 합니다.
OSI 계층 모델과 프로토콜 비교
특성TCPUDP
연결 방식연 ...
5월 31일 10:42에 게시됨
TCP 스틱 패킷 문제 해결 및 구현
스틱 패킷 현상과 그 해결 방법을 설명합니다.
TCP는 데이터를 스트림 형태로 전송하며, 이로 인해 여러 메시지가 하나의 패킷으로 합쳐질 수 있습니다. 이를 스틱 패킷이라고 부릅니다. 아래에서는 스틱 패킷이 발생하는 원인과 이를 해결하기 위한 몇 가지 방법들을 다룹니다.
스틱 패킷 발생 원인
데이터 전송 최적화: TCP는 효율적인 전송을 위해 작은 데이터들을 모 ...
5월 26일 10:12에 게시됨