일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- JavaScript
- 함수형 프로그래밍
- javscript
- tcp
- lambda calculus
- 큐
- Collection
- 로버트마틴
- Rails
- 백준
- solid
- 람다 칼큘러스
- Java
- Eclipse
- 겨울카카오인턴
- 파이썬
- 디자인패턴
- exception
- 스택
- Spring
- JDBC
- Pattern
- design-pattern
- DesignPattern
- functional programming
- Collections
- Network
- 자바
- 프로그래머스
- Python
- Today
- Total
목록컴퓨터과학 기초 (22)
개발자 노트
tls 통신 패킷 분석 참고 https://en.wikipedia.org/wiki/Transport_Layer_Security https://datatracker.ietf.org/doc/html/rfc5246 이전에 TCP 3way handshake까지 살펴보았는데요. 이번 글에선 TLS 통신을 살펴보겠습니다. TLS 통신에 대한 간략한 내용은 많은 블로그 분들이 다뤄주셨기 때문에 개인 공부겸 RFC 문서와 비교해가면서 작성해보겠습니다. 그리고 다음 글에선 그리고 암호화된 application layer data를 복호화까지 진행해보겠습니다. TLS또한 stateful connection oriented protocol이라는 것을 명심해주시고 보면 좋겠습니다. 통신 내용 TCP TCP에서 Push fla..
패킷 분석 패킷 분석 목표 ip 패킷 헤더 보기 tcp 패킷 헤더 보기 3way handshake보 요청 페이지 https://support.microsoft.com/en-us/topic/how-to-use-tracert-to-troubleshoot-tcp-ip-problems-in-windows-e643d72b-2f4f-cdd6-09a0-fd2989c7ca8e 보기 편하게 필터링 최초로 TCP로 3way handshake 하는 부분을 찾은 다음… (눈으로 [SYN] 인 부분을 찾았네요) ip, port에 대해 필터링을 합니다 ip: sender, receiver의 패킷을 상대 host로 필터링 합니다. tcp: 보내고 받는 포트를 클라이언트 포트로 설정합니다. 로컬 호스트 내 특정 클라이언트와 서버간 ..
https://github.com/jurogrammer/top-down-approach-network/blob/main/Chapter3/chapter-3.2.md
클라이언트와 연결된 모든 소켓의 포트번호는 서버 소켓과 동일하다! 오해 오늘 말씀드릴 내용은 저에겐 가히~ 충격적이라 할 수 있겠습니다. 포트 번호에 따라 소켓이 결정된다. 라고 생각했거든요? 다시말해서 포트 번호 80번이라고 하면 거기에 해당하는 소켓 하나만이 있는것이죠. 따라서, TCP 서버에서 클라이언트와 connection을 맺을 때마다 클라이언트 소켓을 새로 생성하잖아요? 그 클라이언트들의 포트 번호가 모두 다를 겁니다. 그리고 이론적으로 resource만 충분하다면, 소켓 번호에 4바이트가 할당되므로 최대 2^16개의 소켓만을 생성할 수 있다고 생각했습니다. 하지만... 이번에 전공도서 파기를 하면서 이 생각은 완전히! 잘못됬다는 것을 깨달았네요. 책 내용 제가 본 책의 내용은 다음과 같습니다..
https://github.com/jurogrammer/top-down-approach-network/blob/main/Chapter3/chapter-3.1.md
글의 흐름 정리 책보다가 충격먹음. 동일한 포트 번호로 커넥션 생성한다고. 실제로 테스트.lsof -iwireshark netstat -t ssh들어가서... 찝찝한 점 1) netstat -t 치면 Active Internet connections라고 나옴. 영~ 찝찝 2) 그래서 검색했더니 connection이라고만 말하고, socket이라고는 안 부르네? https://stackoverflow.com/questions/11129212/tcp-can-two-different-sockets-share-a-port 3) socket pairs https://en.wikipedia.org/wiki/Network_socket Communicating local and remote sockets are cal..
github.com/jurogrammer/top-down-approach-network/blob/main/Chapter2/chapter%202.7.md jurogrammer/top-down-approach-network top-down approach network 책 공부. Contribute to jurogrammer/top-down-approach-network development by creating an account on GitHub. github.com 한 번 C언어로 예전에 하긴 했었는데, 이렇게 파이썬으로 나오니 더 좋은 것 같습니다. 핵심을 더 잘 이해할 수 있겠더라구요. 더불어 TCP는... ㄸ; 서버측에서 3-wayhandshake하는 소켓과 클라이언트와 연결을 맺은 소켓이 따로 ..
github.com/jurogrammer/top-down-approach-network/blob/main/Chapter2/chapter%202.4.md jurogrammer/top-down-approach-network top-down approach network 책 공부. Contribute to jurogrammer/top-down-approach-network development by creating an account on GitHub. github.com DNS 입니다. 생각보다 재밌는 단원이였습니다. 뭔지는 알았는데, directory service. 즉, 전화번호부 서비스라니, 표현이 기가막힙니다.
github.com/jurogrammer/top-down-approach-network/blob/main/Chapter2/Chapter-2.1.mdgithub.com/jurogrammer/top-down-approach-network/blob/main/Chapter2/chapter%202.2.md jurogrammer/top-down-approach-network top-down approach network 책 공부. Contribute to jurogrammer/top-down-approach-network development by creating an account on GitHub. github.com 전공 도서 파기의 일환입니다. application layer네요~
github.com/jurogrammer/top-down-approach-network/blob/main/Chapter2/Chapter-2.1.md jurogrammer/top-down-approach-network top-down approach network 책 공부. Contribute to jurogrammer/top-down-approach-network development by creating an account on GitHub. github.com 전공 도서 파기의 일환입니다. application layer네요~