TIL (Today I Learned)87 [CS] 네트워크 기초, DNS #5 이 문서는 유튜브 '널널한 개발자 TV'님의 강의를 토대로 작성되었습니다. DNS : 분산형 DB구조 ( 계층적 구조 ) Root DNS : 전 세계에 13대 2002.10.22 Root DNS DDoS 공격 사건 도메인 네임? www.naver.com www : Host name naver.com : Domain 인터넷에서는 각각의 Host를 식별하기 위해서 IP주소를 할당한다. IP주소는 외우기 어렵다. 이름을 할당하자 > 도메인 네임 'www.naver.com' 엔터를 하게 된 경우 : 1. PC 자신의 메모리에서 DNS Cache 탐색 2. hosts File을 탐색 3. DNS에 요청 (이 때 공유기를 사용한다면 공유기가 응답한다.) 공유기가 DNS Forwarding을 제공한다. 4. 공유기가.. 2022. 12. 10. [CS] 네트워크 기초, TCP연결? #4 이 문서는 유튜브 '널널한 개발자 TV'님의 강의를 토대로 작성되었습니다. #1 TCP/IP 송/수신 원리 Process(Server)가 File(Socket)에 할 수 있는 동작은 기본적으로 Read, Write, X 이다. 소켓통신에 실행 개념은 없다. 소켓통신 Read : Receive (Input) 소켓 통신 Write : Send (Output) 보조기억장치에 있는 1.4MB의 데이터를 소켓을 통해서 Send해야하는 상황 : 1. Process의 Socket에 일정 메모리를 할당한다. Buffer#1( 속도 지연 발생 7. TCP Buffer의 크기를 Window Size라고 한다. 8. 수신측에서 Segment를 받으면 저장할 수 있는 공간. 9. ACK 데이터에 Window Size를 포함한.. 2022. 12. 10. [CS] 네트워크 기초, Proxy #3 이 문서는 유튜브 '널널한 개발자 TV'님의 강의를 토대로 작성되었습니다. #1 (Application)Proxy 구조와 작동원리 프록시? 대리자 User mode, Application, Proxy : Socket, Stream Inline, Out of path : Packet 다루는 데이터가 다르다 ( 계층이 다르다 ) #2 Proxy의 활용 1 : 우회 Tor Project : 인터넷에 자유를 프록시 서버에서 클라이언트의 모든 통신을 감청할 수 있다. => 소켓 통신내역을 전부 확인할 수 있다. VPN과 연결된다. (VPN은 네트워크 수준, Proxy는 웹 수준) #3 Proxy의 활용 2 : 분석 소켓 수준에서 SSL을 통해 Stream데이터를 암호화한다. 이 데이터를 Packet수준에서 분석하.. 2022. 12. 10. [CS] 네트워크 기초, 네트워크 망 #2 이 문서는 유튜브 '널널한 개발자 TV'님의 강의를 토대로 작성되었습니다. #1 라우팅? 포워딩? 라우팅 알고리즘 네트워크에서 패킷을 전달하는 두 가지 기능은 Forwading과 Routing이다. 포워딩Forwading : Input패킷을 output으로 내보낸다 (H/W) 라우팅Routing : 경로 선택 (S/W) 라우팅이랑 라우팅 알고리즘을 이용하여 포워딩 테이블을 만드는 작업 포워딩은 포워딩 테이블에 적힌 목적지 주소에 대응된 출력 포트로 패킷을 이동시키는 작업 1. Tradition routing algorithm - 각각의 라우터가 독립적으로 포워딩 테이블을 만들고, 경로를 결정하는 방식 - 링크 상태 알고리즘 : 각각의 라우터들이 네트워크에 존재하는 모든 링크의 상태 정보를 모두 가지고 있.. 2022. 12. 10. [CS] 네트워크 기초, TCP/IP 4계층, #1 이 문서는 유튜브 '널널한 개발자 TV'님의 강의를 토대로 작성되었습니다. #1 OSI 7계층과 DoD 4계층 모델 OSI-7 7계층의 구분 개념적인 모델 H/W 영역 : L1, L2 S/W 영역 (Kernel ) : L3, L4 S/W 영역 (USER, Application) : L5, L6, L7 DoD 4계층 모델 ( TCP/IP 4계층 ) 구분 개념적인 모델 H/W 영역 : Access (Network Interface) S/W 영역 (Kernel ) : Network(Internet) / IP 주소 , Transport / Port 번호 S/W 영역 (USER, Application) : Application / MAC *식별자 4계층 모델의 구현 H/W 영역 : Network Interface.. 2022. 12. 10. [CS] CS:APP #9 해당 포스트는 다음 서적을 참고하여 작성하였습니다. [컴퓨터 시스템(CS:APP) 제 3판, 퍼스트북] 이번 포스팅에서는 CS:APP의 챕터 9, 가상메모리에 대해서 다루겠다. 가상메모리에 대해서 이해하기 위해서는 다음의 키워드를 선수학습 하길 권장한다. 프로세스, 캐시메모리와 캐시 미스, 메모리 관리 다음 그림은 Process Model에 대한 그림이다. 여러개의 프로세스가 동작하는 원리를 알면 가상 메모리의 동작환경을 이해하는 데 큰 도움이 된다. CHAPTER 9 여러 프로세스들이 하나의 메인 메모리를 공유하는 것은 특별한 어려움을 만나게 한다. CPU에 대한 요구가 증가함에 따라 프로세스들은 점점 느려진다. 또한 다양한 에러를 야기한다. 메모리를 보다 효율적이고 더 적은 에러를 갖도록 관리하기 위.. 2022. 12. 6. [CS] 가상 메모리 Hybrid system #5 이 포스팅은 한국기술교육대학 김덕수 교수님의 강의를 참고하여 작성했습니다. #1 Hybrid Paging/Segmentation Paging과 Segmentation의 장점 결합 프로그램 분할 1. 논리 단위의 segement로 분할 2. 각 segment를 고정된 크기의 page들로 분할 Page단위로 메모리에 적재 5 1. Address mapping virtual address : v = (s, p, d) - s : segment number - p : page number - d : offset in a page SMT와 PMT모두 사용 - 각 프로세스 마다 하나의 SMT - 각 segment마다 하나의 PMT Address mapping - Direct, associated 등 메모리 관리 - .. 2022. 12. 2. [CS] 가상 메모리 Segmentation system #4 이 포스팅은 한국기술교육대학 김덕수 교수님의 강의를 참고하여 작성했습니다. 이전 포스팅에서는 Paging method의 공유와 보안에 대해서 다루며 해당 method에 대한 정리를 했다. Paging method는 프로그램(프로세스)의 논리적 구조 고려하지 않아서 Page sharing/protection이 복잡해진다는 것을 확인했다. 이번 포스팅에서는 Segmentation system을 다뤄본다. Paging system의 한계점을 어떻게 보안하는지에 대해 다루겠다. #1 Segmentation system 프로그램(프로세스)을 논리적 block으로 분할(segment) - Block의 크기가 서로 다를 수 있음 특징 : - 메모리를 미리 분할 하지 않음 (VPM과 유사) - Segment shari.. 2022. 12. 2. [CS] 가상 메모리 Memory Management #3 이 포스팅은 한국기술교육대학 김덕수 교수님의 강의를 참고하여 작성했습니다. #1 Memory Management Page와 같은 크기로 미리 분할하여 관리/사용 - Page frame - FPM 기법과 유사 Frame table - Page frame당 하나의 entry- 구성 : Allocated/available field PID fieldLink field(For free list, 사용가능 한 fp들을 연결)AV(Free list header, free list의 시작점) AV는 가장 처음으로 비어있는 entry를 지칭한다. link는 빈 entry에 대한 linked list를 만든다. #2 Page Sharing 여러 프로세스가 특정 page를 공유 가능 Non-continuous alloca.. 2022. 12. 1. 이전 1 ··· 5 6 7 8 9 10 다음