네트워크 공부.

bluesky·2022년 7월 27일
0

TCP와 UDP는 어떠한 차이를 갖는가?

  • 공통점
    • TCP IP 4계층 또는 OSI 7계층의 전송계층에 속한다는 것입니다.
  • 차이점은 다음과 같습니다.
    • TCP 는 연결지향의 특성을 갖으며, 순차적 데이터 전송과 신뢰성있는 데이터 전달을 보장합니다.
    • UDP는 연결지향하지 않습니다. 데이터 전송의 순서를 보장하지 않습니다, 대신 TCP 프로토콜의 통신보다 전송 속도가 더 빠릅니다.

라우터와 스위치의 차이는?

  • 스위치

    • 2계층 장비. 네트워크 상 두 장치간 데이터를 송수신 하는 장치. mac 주소를 기반으로 수행됨.
  • 라우터

    • 3계층 장비. 서로다른 네트워크를 연결함. 라우팅으로 최적의 경로를 데이터를 송신함. ip주소를 기반으로 수행됨
  • 참고로 스위치라는 단어는 매우 범용적입니다.(그 예로, L7, L4, L3 스위치)라는 말이 있습니다.
    라우터는 L3 스위치 라고도 합니다.

WS 와 WAS의 차이는? 이둘을 구분하는 이유는 무엇일까요?

  • 공통점

    • 클라이언트의 HTTP 요청을 처리합니다.
  • 차이점

    • WS는 다음 2가지 작업을 해야 합니다.
      • 그것은 정적인 컨텐츠를 제공하거나, 동적인 컨텐츠를 제공하기 위해 요청을 전달합니다.
      • 예시로 Apache, nginx가 있습니다.
    • WAS
      • DB 조회 및 다양한 로직 처리 요구시 동적인 컨텐츠를 제공 하기 위해 만들어진 애플리케이션 서버
      • 업무 처리하는 비즈니스 로직 수행
      • ex) tomcat
  • 이 둘을 구분하는 이유는 성능 향상을 위해서 입니다.

    • WAS로 정적인 데이터를 처리할 수도 있지만, 성능상 좋지 않습니다.
      따라서 정적인 데이터는 더 빠르게 처리할 수 있는 웹서버에 맡기고, WAS는 동적인 데이터만 처리하도록 분산하는 것이 성능 향상에 이점이 있습니다.

브라우저의 주소창에 www.naver.com을 입력하면 어떤 일이 일어날까요? 큰 흐름을 설명해주세요.

브라우저의 주소창에 www.naver.com을 입력하면

  • 브라우저의 대기열에 작업이 등록됩니다.
    대기열에 있는 데이터는 순차적으로 처리됩니다.

  • 순서가 되면 브라우저 캐시를 참고하여, 캐시에 데이터가 있으면 캐시의 데이터를 반환합니다.
    그렇지 않으면 다음단계로 넘어갑니다.

  • 도메인주소로부터 IP 값을 얻어내는 절차를 거칩니다.
    이것은 DNS 프로토콜에 의해 일어납니다.

  • 알게된 IP를 이용하여 OS에 의뢰하여 메시지를 전달합니다.

    • 구체적인 과정은 프로토콜스택(네트워크 제어용 프로그램) → LAN 어댑터(네트워크 장비) → 신호 송출
    • 메시지는 목적 IP까지 네트워크를 통해 전달 되는데, IP를 통해 데이터가 네트워크를 통해 전달되는 과정을 홉바이홉 통신이라고 합니다.
    • 목적 IP에 연결된 네트워크 장비에 도착하면, ARP프로토콜에 의해 mac주소로 변환합니다.
    • 드디어 서버 도착
  • TCP 3웨이 - 핸드셰이및 및 SSL 연결 이 일어납니다.(초기연결)

  • 서버는 요청을 처리하여 클라이언트로 데이터를 전송합니다.

  • 응답을 받은 데이터를 이용하여 브라우저에서는 렌더링이 일어납니다.

    • 돔트리와 렌더 트리를 만들고, 화면을 그립니다!
  • 위의 모든 과정은 비캡슐화 및 캡슐화 과정으로 일어납니다!!!

    • 캡슐화 과정은 상위 계층의 헤더와 데이터를 하위 계층의 데이터 부분에 포함시키고 해당 계층의 헤더를 삽입하는 과정을 말합니다.

참고자료

https://gyoogle.dev/blog/web-knowledge/Web Server와 WAS의 차이.html

https://gyoogle.dev/blog/web-knowledge/브라우저 동작 방법.html

https://github.com/JaeYeopHan/Interview_Question_for_Beginner/tree/master/Network#웹-통신의-큰-흐름

https://blog.naver.com/jhc9639/222700552159

profile
SMART https://github.com/dongseoki?tab=repositories

0개의 댓글