🚌 2024년 11월 18일~ 2024년 11월 23일까지의 주제는 네트워크다.
💡 공통으로 준비한 질문
1️⃣ 첫번째 접은 글은 내 말로 풀어쓴 정답
2️⃣ 두번째 접은 글은 해석 또는 공부한 내용 또는 추가적으로 궁금한 내용
1. OSI 7 Layer의 각 계층에 대해 설명해주세요.
- 물리계층
- 단지 데이터 전기적인 신호로 변환해서 주고받는 기능을 진행하는 공간. 즉, 데이터를 전송하는 역할만 진행
- 예) 리피터, 케이블, 허브
- 데이터 링크
- 물리 계층으로 송수신되는 정보를 관리하여 안전하게 전달되도록 도와주는 역할. Mac 주소를 통해 통신한다. 프레임에 Mac 주소를 부여하고 에러검출, 재전송, 흐름제어를 진행한다.
- 예) 브릿지, 스위치 등
- 네트워크
- 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능을 담당한다. 라우터를 통해 이동할 경로를 선택하여 IP 주소를 지정하고, 해당 경로에 따라 패킷에 전달해준다. 라우팅, 흐름 제어, 오류 제어, 세그먼테이션 등을 수행한다.
- 예) 라우터, IP
- 전송
- TCP(신뢰성, 연결지향적)와 UDP(비신뢰성, 비연결성, 실시간) 프로토콜을 통해 통신을 활성화한다. 포트를 열어두고, 프로그램들이 전송을 할 수 있도록 제공해준다.
- 예) TCP, UDP
- 세션
- 데이터가 통신하기 위한 논리적 연결은 담당한다. TCP/IP 세션을 만들고 없애는 책임을 지니고 있다.
- 예) API, Sockent
- 표현
- 데이터 표현에 대한 독립성을 제공하고 암호화하는 역할을 담당한다. 파일 인코딩, 명령어를 포장, 압축, 암호화한다.
- 예) JPEG, MPEG
- 응용
- 최종 목적지로, 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다. 사용자 인터페이스, 전자우편, 데이터베이스 관리 등의 서비스를 제공한다.
- 예) HTTP, FTP, DNS
OSI 7 계층 | 👨🏻💻 Tech Interview
OSI 7 계층 7계층은 왜 나눌까? 통신이 일어나는 과정을 단계별로 알 수 있고, 특정한 곳에 이상이 생기면 그 단계만 수정할 수 있기 때문이다. 1) 물리(Physical) 리피터, 케이블, 허브 등 단지 데이터
gyoogle.dev
tech-interview/contents/network.md at master · WeareSoft/tech-interview
:loudspeaker:🙍 tech interview. Contribute to WeareSoft/tech-interview development by creating an account on GitHub.
github.com
2. TCP Connection 시 3-way handshaking에 대해 설명해주세요.
- TCP는 정확한 전송을 보장해야 한다. 따라서 통신하기에 앞서, 논리적인 접속을 성립하기 위해 3 way handshake 과정을 진행한다.
- 과정
- 클라이언트가 서버에게 SYN 패킷을 보냄(sequence : x)
- 서버가 SYN(x)을 받고, 클라이언트로 받았다는 신호인 ACK와 SYN 패킷을 보냄(sequence : y, ACK : x + 1)
- 클라이언트는 서버의 응답은 ACK(x+1)와 SYN(y) 패킷을 받고, ACK(y+q)을 서버로 보냄
- 이렇게 3번의 통신이 완료되면 연결이 성립된다.

[TCP] 3 way handshake & 4 way handshake | 👨🏻💻 Tech Interview
[TCP] 3 way handshake & 4 way handshake 연결을 성립하고 해제하는 과정을 말한다 3 way handshake - 연결 성립 TCP는 정확한 전송을 보장해야 한다. 따라서 통신하기에 앞서, 논리적인 접속을 성립하기 위해 3 w
gyoogle.dev
tech-interview/contents/network.md at master · WeareSoft/tech-interview
:loudspeaker:🙍 tech interview. Contribute to WeareSoft/tech-interview development by creating an account on GitHub.
github.com
3. TCP와 UDP의 차이에 대해 설명해주세요.
- TCP란?
- 네트워크 통신에서 신뢰적인 연결방식
- TCP는 기본적으로 unreliable network에서 reliable network를 보장할 수 있도록 하는 프로토콜
- network congestion avoidance algorithnm을 이용
- UDP란?
- User Datagram Protocol의 약자로 데이터를 데이터그램 단위로 처리하는 프로토콜
- 비연결형, 신뢰성 없는 전송 프로토콜이다.
- 데이터그램 단위로 쪼개면서 전송을 해야하기 때문에 전송 계층이다.
- Transport layer에서 사용하는 프로토콜
TCP/IP (흐름제어/혼잡제어) | 👨🏻💻 Tech Interview
최종 수정 : 12/17/2022, 7:23:59 AM
gyoogle.dev
UDP | 👨🏻💻 Tech Interview
UDP 들어가기 전 UDP 통신이란? User Datagram Protocol의 약자로 데이터를 데이터그램 단위로 처리하는 프로토콜이다. 비연결형, 신뢰성 없는 전송 프로토콜이다. 데이터그램 단위로 쪼개면서 전송을
gyoogle.dev
TCP 와 UDP 차이를 자세히 알아보자
TCP와 UDP는 TCP/IP의 전송계층에서 사용되는 프로토콜이다. 전송계층은 IP에 의해 전달되는 패킷의 오류를 검사하고 재전송 요구 등의 제어를 담당하는 계층이다.
velog.io
TCP 와 UDP [동작원리/헤더/차이점]
TCP / UDP ■ TCP / UDP 전송계층에서 사용하는 프로토콜로써, 목적지...
blog.naver.com
tech-interview/contents/network.md at master · WeareSoft/tech-interview
:loudspeaker:🙍 tech interview. Contribute to WeareSoft/tech-interview development by creating an account on GitHub.
github.com
4. HTTP Method에는 어떤 것들이 있는지 설명해주세요.
- GET : 조회, 리소스 요청
- POST : 요청된 데이터를 처리하고 자원을 생성
- PUT : 요청된 자원이 없으면 생성, 있으면 새 것으로 전체 갱신
- PATCH : 자원의 일부분만 수정
- DELETE : 요청된 자원을 삭제
5. REST API와 RESTful 하다는 것이 무엇인지 설명해주세요.
- REST란?
- REST 하다는 것은 Representational State Transfer(대표적인 상태 전달)의 약자로 월드와이드웹(www)과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 개발 아키텍처의 한 형식이다.
- REST는 기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있는 아키텍처 스타일이다.
- REST API란?
- REST 기반으로 서비스 API를 구현한 것
- REST 기반으로 시스템을 분산하면 확장성과 재사용성을 높여 유지보수 및 운용을 편리하게 할 수 있고, HTTP 표준을 기반으로 구현하므로, HTTP를 지원하는 프로그램 언어로 클라이언트, 서버를 구현할 수 있다.
- URI는 정보의 자원을 표현해야 하고, HTTP Method로 자원의 대한 행위를 표현한다.
- RESTful이란?
- RESTful은 일반적으로 REST라는 악키텍처를 구현하는 웹 서비스를 나타내기 위해 사용되는 용오이다. 즉, REST 원리를 따르는 시스템은 RESTful이란 용어로 지칭된다.
- 목적은 이해하기 쉽고 사용하기 쉬운 REST API를 만드는 것이다.
- 퍼포먼스 향상에 있는 것이 아니라, 일관적인 컨벤션을 통한 API의 이해도 및 호환성을 높이는 게 주 동기이다.
- RESTful 하지 못하다는 것은
- CRUD 기능을 모두 POST로 처리하는 API
- route에 resource, id 외에 정보가 들어가는 경우(/students/updateName)
❔ 개인으로 준비한 질문
1. DNS가 무엇인지 설명해주세요.
- DNS란 데이터를 교환하는 경우이다.
- DNS는 Application Layer Protocl이며, 해당 프로토콜은 TCP, UDP 중 하나의 Transport Layer Protocl을 사용해야 한다.
- Domain Name Server의 약자로, IP 주소를 문자로 표현한 주소로 바꾸는 시스템 혹은 서버를 의미한다.
2. CORS가 무엇인지 설명해주세요.
- CORS(Cross Origin Resource Sharing)이란?
- 웹 서버에게 보안 cross-domain 데이터 전송을 활성화하는 cross-domain 접근 제어권을 부여한다.
- 배경
- 처음 전송되는 리소스의 도메인과 다른 도메인으로부터 리소스가 요청될 경우 해당 리소스는 cross-origin HTTP 요청에 의해 요청된다.
- 보안 상의 이유로, 브라우저들은 스크립트 내에서 초기화되는 cross-origin HTTP 요청을 제한한다.
tech-interview/contents/network.md at master · WeareSoft/tech-interview
:loudspeaker:🙍 tech interview. Contribute to WeareSoft/tech-interview development by creating an account on GitHub.
github.com
[CORS] Cross Origin Resource Sharing
■ CORS - Cross Origin Resource Sharing CORS란 개념에 대해 정리하겠습니다. ● CORS란? CORS란 Cross Origin Resource Sharing의 줄임말로, Cross-Site Http Request를 가능하게 하는 표준 규약입니다. 다른 도메인으로부터
zamezzz.tistory.com
3. TSL/SSL HandShake에 대해 설명해 주세요.
4. 로드 밸런싱에 대해서 설명해 주세요.
'개인 공부 > TIL' 카테고리의 다른 글
[ TIL - CS ] 면접을 위한 CS 공부 8편 - 네트워크 - (0) | 2024.11.22 |
---|---|
[ TIL - 면접 ] 자소서 질문 대비 공부 4편 - JWT 편 - (0) | 2024.11.20 |
[ TIL - CS ] 면접을 위한 CS 공부 6편 - 데이터베이스 - (0) | 2024.11.15 |
[ TIL - 면접 ] 자소서 면접 대비 공부 3편 - JPA - (0) | 2024.11.13 |
[ TIL - CS ] 면접을 위한 CS 공부 5편 - 데이터베이스 - (0) | 2024.11.11 |