일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- dp
- ip
- HTTP
- 크롤링
- dfs
- 쉬운 문제
- type challenge
- 프로그래머스 레벨 2
- 자바스크립트
- TCP
- Algorithm
- HTTP 완벽 가이드
- 프로그래머스
- 타입 챌린지
- typescript
- Nestjs
- 가천대
- Node.js
- 타입스크립트
- 그래프
- socket
- 알고리즘
- 문자열
- BFS
- Crawling
- javascript
- 소켓
- 백준
- 수학
- 레벨 1
- Today
- Total
목록Listen (2)
kakasoo
오늘은, TCP 기반의 서버를 만들어보고자 한다, 당연히 서버만 있으면 동작 여부를 모르니 클라이언트도 만든다. 복습 겸, 지금까지 소켓의 생성부터 데이터 송수신에 관한 것을 정리해보도록 하자. server측 0. WSAStartup() // 함수 요청 1. socket() // 소켓을 생성한다. 2. bind() // 소켓에 정보를 바인드한다, 즉 주소 정보를 할당한다. 3. listen() // 소켓을, 연결 요청 대기 상태로 한다. 4. accept() // 정보가 들어왔을 경우에 연결을 허용한다. 5. read() / write() // 데이터를 송수신한다. 이는 리눅스일 경우의 함수이고, 윈도우일 때에는 send()와 connect()였다. 6. close() // Socket을 close() ..
네트워크 프로그래밍은 운영체제와 시스템 프로그래밍에 대한 약간의 지식이 필요하다. 또한 네트워크 상의 전송규약인 TCP/IP 라는 프로토콜을 어느 정도 이해해야 한다. 네트워크와 소켓에 대한 이해 네트워트 프로그래밍은 서로 다른 두 컴퓨터가 정보를 교환할 수 있도록 하는 것을 의미한다. 이 과정에서는 물리적인 연결이 필요하고, 이 안에서 작동할 소프트웨어가 필요한데, 이 연결은 이미 다 되어 있다. 지금 존재하는 대부분의 컴퓨터들은 이미 인터넷이라고 하는 '물리적인 연결'이 되어 있는 상태기 때문에, 우리가 고민해야 할 부분은 이제 이 망에서 작동할 소프트웨어적 데이터의 송수신 방법이다. 하지만 이 방법 역시 운영체제에 상에서 소켓'Socket' 이라는 것을 제공하기 때문에 이미 해결되어 있는 상태다. ..