티스토리 뷰
Chapter1
S1
예시:
http:
+//
+ < 웹 서버명 > +/
+ < 디렉토리명 > +/
+ ... + < 파일명 >Url 맨 앞의 있는 문자열은 < 프로토콜 종류 >을 나타낸다. (예시:
http:
)//
다음은 < 웹 서버명 > 를 나타낸다.그 뒤의
/
은 < 디렉토리명 >를 나타낸다.맨 마지막은 < 파일명 > 를 나타낸다.
(맨위에 예시는 아래 문제를 풀기 위한 도움)
S2
DNS 서버에 조회 메세지를 보내는 클라이언트는 < DNS 리졸버 > 또는 < 리졸버 >라고 부른다. 이것의 실체는 Socket 라이브러리에 들어있는 부품화한 프로그램이다. Socket 라이브러리는 < OS >에 포함되어 있는 네트워크 기능을 애플리케이션에서 호출하기 위한 부품을 모아 놓은 것이다.
(각 빈칸에 다 다른 단어가 들어감)
S3
- DNS 서버에 등록한 정보에는 도메인명이라는 < 계층적 >구조를 가지는 이름이 붙여져 있다. 이름은 점으로 구분된다. 가장 오른쪽에 위치한 것이 < 상위 >계층을 나타낸다.
S4
- < 서버 >측에서 먼저 소켓을 만들고 < 클라이언트 >에서 연결하기를 기다린다. 소켓을 만들고 연결하여 데이터 송수신, 말소까지 과정을 실행하는 것은 < OS 내부의 프로토콜 스택 > 이다.
Chapter2
S1
- < netstat >명령어는 소켓의 내용을 표시하는 명령어 이다. < netstat > -ano 옵션을 주었을 때 나타나는 소켓 정보에서
- Local Address 는 < netstat >명령어를 실행한 기계 자체 (로컬측)의 IP 주소와 포트번호를 나타낸다. LAN 어탭터에서 할당받은 IP주소: 포트번호 정보가 나타난다. 이때, 0.0.0.0은 특정 IP 주소와 연결되어 있지 않음을 나타낸다.
- Foreign Address는 통신 상대측(원격)의 IP 주소와 포트번호를 나타낸다. UDP의 경우 상대측의 주소나 포트를 연결하지 않으므로
*:*
가 나타난다.
S2
- 서버 애플리케이션은 보통 기동 직후에 소켓을 만들고 클라이언트에서 접속을 기다리도록 만들어져 있다.
- 제어정보를 패킷의 맨 앞부분에 배치하는 곳부터 < 헤더 >라고 부른다. < 헤더 >의 형태로 제어정보를 주고 받는다.
S3
- 데이터를 송신 후, ACK 신호가 돌아오지 않으면 상대방이 데이터를 제대로 받지 못한 것을 의미한다. 오류 발생 상황을 의미한다. 오류 발생 상황시 LAN 어댑터, 버퍼, 라우터 모두 회복조치를 (취하지 않는다.)
- ACK 번호가 돌아오는 기다리는 시간을 ( 타임아웃 값 )이라고 한다.
S4
- 이 부분을 읽으면서 궁금증이 든 내용은 "서버와의 대화가 끝나면 소켓을 사용하여 서버와 대화할 수 없게 됩니다. " 이었다. 소켓이 말소되면 통신이 끊어지는 것인데 어떻게 계속 통신할 수 있는 것일까?
- 책 뒷부분에도 나오지만 결론은 서버는 대기소켓을 항상 열어둔다. 클라이언트에서 소켓을 요청이 들어오면 대기소켓을 복사하여 연결하는 소켓을 생성하여 클라이언트와 연결한다.
S5
- 이더넷의 세가지 성질(165pg)
- < MAC >헤더의 수신처 < MAC >주소에 기억된 상대에게 패킷을 전달
- 송신처 < MAC >주소로 송신처를 나타낸 후
- < 이더 >타입으로 패킷의 내용물을 나타냄
S6
- 패킷이 짧은 경우 유실된다 하더라도 패킷 전체를 보내도 낭비가 아니므로 < UDP >를 사용한다.
Chapter3
S1
- 신호가 < 리피터허브 >에 도착하면 LAN 전체에 신호가 흩어진다.
- 이더넷의 기본원리 : 전체에 패킷 신호를 뿌리고 수신처 MAC 주소에 해당하는 기기만 패킷을 수신한다.
S2
- < 스위칭 >허브는 < MAC >주소표의 내용을 갱신하는 동작도 한다. < MAC > 주소표에 등록된 정보는 그대로 두는 것이 아니라 사용하지 않고 일정한 기간이 경과하면 삭제된다.
S3
- 라우터는 < IP >개념에 기초하여 만들어졌고, 스위칭허브는 < 이더넷 >에 기초하여 만들어 졌다. 즉 라우터는 < 패킷을 운반 >하는 일을 스위칭허브에게 의뢰한다.(238)
참고
- Chapter3 일부와 Chapter4의 내용은 물리계층내용이라 스터디에서 건너뜀
Chapter5
S1
- 방화문의 역할?
- 관문의 역할을 하여 특정 서버에서 동작하는 특정 애플리케이션에 엑세스하는 패킷만 통과시키고, 그 외의 패킷을 차단하는 역할
S2
- 방화벽의 종류로 패킷 필터링형을 많이 사용한다. 패킷 필터링의 조건을 설정할 때는 < 패킷의 흐름 >에 착안한다. 웹 서버를 종점으로 조건을 설정한다. 이외의 통신 가능성에 따라 포트번호, TCP 컨트롤비트등을 추가하여 조건을 설정한다. 이런경우, DNS 등 UDP 통신의 경우 문제가 될 수 있다.
S3
- Ip 정보가 계속 바뀌면 전후 관계 여부를 전혀알 수없다.전후 관련 정보를 나타내기 위해 하는 방법 중 하나는?
- Http 헤더 필드에 정보넣어줌(쿠키)
S4
- 캐시서버가 사용하는 구조는?
- 프록시 구조
- 이것은 웹서버와 클라이언트 사이에서 엑세스 동작을 중개
- 중개시 웹 서버에서 받은 데이터를 저장해두고 웹서버를 대신하여 반송하기도 함
S5
- 물리적으로 사용자에게 가까운 장소에 캐시서버를 설치하고 웹 서버 운영자에게 대출하는 서비스는?
- CDS 콘텐츠 배포 서비스
- 가장 가까운 ip 를 알기 위해사용하는 방식은?
- 서버측의 DNS 서버에 경로표를 저장한다.
Chapter6
S1
- 데이터를 송수신 하는 구조는 대칭으로 만들면 클라이언트나 서버여부에 상관없이 자유롭게 데이터 송,수신이 가능하다. 하지만 대칭으로 만들 수 없는 부분이 접속동작 이다.
- 서버측에서는 접속을 대기하는 상태의 소켓을 생성한다. 클라이언트에서 요청이 들어왔을 때 일어나는 동작은?
- 대기소켓을 복사하여 새로운 소켓을 생성한다. 새로운 소켓으로 클라이언트와 접속하여 데이터를 주고 받는다. 기존 대기 소켓은 대기상태로 계속 유지하며 클라이언트의 다른 접속 요청을 기다린다.
S2
- 패킷이 서버에 제대로 도착하면 패킷에서 데이터 조각을 추출하여 < 수신버퍼 >에 저장한다.
- 데이터 조각을 연결하고 결합하여 원래의 데이터로 복원하는 동작은 < 데이터 패킷이 도착할 때마다 실행된다. >
S3
- 웹서버에서 공개하는 디렉토리는 디스크의 실제 디렉토리가 아니라 가상으로 만든 디렉토리이다.
- 가상 디렉토리의 경로명이 URI가 된다.
- 따라서 서버 프로그램이 작동할 때 가상 디렉토리에 대응하는 프로그램이 실행된다.
- 조건에 따라 동작하게 엑세스 제어를 한다. 엑세스 제어를 할때, 주로 설정하는 조건 3가지는?
- 클라이언트주소, 클라이언트 도메인명, 사용자명과 패스워드
S4
- html 문서를 받으면 태그를 해석하여 화면 배치를 하고 화면에 표시한다. 실제 화면 표시 동작을 담당하는 것은? < OS >
정리
- 약 2달동안 성공과 실패를 결정하는 1%의 네트워크 원리 를 읽고 퀴즈를 내는 스터디를 진행했다.
- 그 동안 내가 냈던 퀴즈들을 한 페이지에 정리하였다.
- 아직도 네트워크는 많이 어렵지만, 모호했던 개념들을 읽고 같이 토론해보면서 조금은 더 이해할 수 있게 된 듯 하다.
- 번외편으로
www.google.com
을 입력했을 때, 일어나는 일에 대해 정리할 예정이다.
'Computer Science > 네트워크' 카테고리의 다른 글
[TCP/IP] Transport Layer (트랜스포트 계층) (0) | 2021.08.01 |
---|---|
소켓과 TCP/IP (0) | 2021.07.28 |
토큰 인증방식(+ 쿠키와 세션 추가내용) (0) | 2021.03.09 |
쿠키와 세션 (0) | 2021.02.26 |
네트워크 시리즈(마지막) 7. HTTPS (0) | 2021.01.30 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Spring
- 월간회고
- javascript
- JPA
- 네트워크
- java
- 개발공부일지
- Transaction
- DB
- 우아한테크코스
- 내부코드
- 운영체제
- 코드스쿼드
- 인증
- 모의면접준비
- 마스터즈코스
- TCP/IP
- 알고리즘
- TIL
- CS
- 우테코수업
- 회고
- python
- 카카오
- React
- OS
- 글쓰기미션
- 객체지향
- 학습로그
- JS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함