프로그래밍/서버(23)
-
[thead] Spurious wakeup, Condition variable
스터디 중에 나온 용어들인데 잘 정리가 필요한 녀석들 일단 용어 적어두고 정리하자
2019.07.17 -
[Network] inet_addr error. convert inet_pton
'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings inet_addr가 구버전 함수여서 권장하지 않는 API 함수이다.inet_pton으로 대체하면 된다. 1. Warning을 무시하는 방법1 #define _WINSOCK_DEPRECATED_NO_WARNINGS include 최상단에 해주면 되는듯하다. 2. Warning을 무시하는 방법2 프로젝트 속성 > 구성 속성 > C/C++ > 일반 > SDL 검사 > NO 3. inet_pton 사용하기 보통 이런 부분이 문제일텐데 // servAddr.sin_addr.s_addr =..
2019.01.14 -
[TCP/IP] 네트워크 스택 이해하기
http://d2.naver.com/helloworld/47667 팀장님이 야간에 읽어보라고 메일을 보내셨다! 좋은 글임에 틀림이 없다. 읽고 정리하기!훑어봤는데 아주 잘 정리되어있다.
2016.01.04 -
[참고] cgcii 홈페이지. 열심히 읽어보자!
http://www.cgcii.co.kr/
2015.10.26 -
[서버] 홀펀칭
서론P2P에서 Peer들 간의 통신을 하기 위해서 서로의 IP, Port에 패킷을 전송하면 된다.But! 우리는 방화벽의 NAT(Network Address Translation)을 거치게 된다.NAT안에서는 통신이 되지만 서로 다른 NAT에서는 그 안에만 존재하는 가상 IP기 때문에 당연히 통신이 되지 않는다. NAT의 종류도 여러가지다.Full Cone NAT, Restricted Cone NAT, Port Restricted Con NAT, Symmetric NAT 홀펀칭1. 사설(Private) IP로 패킷을 전송해본다.2. 안되면 공인(Public) IP로 패킷을 전송해본다.3. 안되면 Relay Server로 패킷을 전송해 전송을 맡긴다. (릴레이 서버는 패킷을 중계해주는 서버이다. 클라이언트..
2015.09.13 -
[서버] nagle 알고리즘
정의IP 네트워크에서 데이터는 몇 곂의 헤더로 캡슐화되어 목적지로 전해진다.이 헤더들의 용량도 제법 크고, 적은 데이터를 보내게 되면 배보다 배꼽이 커진다!! 보낼 수 있는 데이터를 바로 패킷으로 만들지 않고 가능한 모아서 더 큰 패킷으로만들어 한번에 보내면 효율적으로 전송할 수 있다. 네이글 알고리즘은 이것을 실제로 구현한 네트워크 전송 알고리즘이다. 동작원리네이글 알고리즘 수도코드 123456789101112#define MSS "maximum segment size"if there is new data to send if the window size >= MSS and available data is >= MSS send complete MSS segment now else if there is u..
2015.09.13