Network

Goofi·2024년 3월 27일
0

프로그램

❗️운영체제관점

사용자 또는 시스템이 실행하려는 작업을 수행하는 명령어나 코드의 집합을 의미한다.

  • 이것은 컴퓨터에서 실행되는 소프트웨어 형태이다.

명령어나 코드의 집합

프로그램을 구성하는 기본적인 구성 요소들을 나타낸다.
즉, 프로그램이 실행될 때 컴퓨터에 의해 수행되는 여러 명령어들이나 코드들의 모음을 의미한다.

운영체제는 프로그램을 실행하고 관리하는 역할을 한다.
프로그램이 실행되면 운영체제는 해당 프로그램에게 시스템 자원을 할당하고 필요한 서비스를 제공한다.

프로세스

❗️운영체제관점

프로세스는 운영체제로부터 시스템 자원(메모리, CPU시간 등)을 할당 받아 실행되는 프로그램의 실행 과정을 나타낸다.

프로시저

❗️운영체제관점

사용자가 어플리케이션을 실행하면, 운영체제가 이를 위해 새로운 프로세스를 생성하고 해당 프로세스를 메모리에 로드하여 실행시키는 과정을 의미한다.

SMB

Windows 운영 체제에서 파일 및 프린터를 공유 프로토콜

P2P의 옛날 주요 서비스

  • 웹하드
  • 소리바다

UDP

통신하려고 하는 종단시스템이 켜져있는지 안켜져 있는지 모르고 메세지를 보낸다.
무조건 속도를 중시하는 게임에서 주로 많이 사용한다.

연결형

주기적으로 데이터를 보낸다.

tcp 장점, 단점

빠르다, 느리다, 정확성

왜? TCP는 UDP보다 느린가?
TCP/IP 연결을 새로 맺어야한다 - 3 way handshake 시간 추가
웹 브라우저로 사이트를 요청하면 HTML 뿐만 아니라 자바스크립트, css 추가 이미지 등 수 많은 자원이 함께 다운로드
현재는 HTTP 지속 연결(Persistent Connections)로 문제 해결
HTTP/2, HTTP/3 에서 더 많은 최적화

무상태

  • 거의 안쓴다.
  • 보완이 중요하기 때문이다.

리버스 프록시

웹서버안에 프록시 서버 기능까지 하는 것이다. 그래서 웹서버를 거쳐서 웹어플리케이션 서버까지 통신을 하는게 리버스 프록시다.

포워드 프록시

프록시는 중간에 매개 역할을 하는 역할
웹서버에서 자원을 받고
받은 자원을 가지고 클라이언트는 프록시 서버를 가지고 웹어플리케이션 서버와 통신을 한다.

쿠키

캐시

HTTP

HTTP는 사용자가 URL을 요청할 때에만 서버에서 해당 페이지를 꺼내주는 식이다.

즉, 사용자는 서버로부터 새로운 정보를 받아보기 위해서, 반드시 새로운 URL을 요청

AJAX

AJAX는 비동기적으로 데이터를 교환하기 위한 브라우저 기술

특징

  • 새로운 HTML을 받는게 아니다.
  • 동일한 웹페이지 내에서 DOM을 변경한다.

소켓

프로그램이 네트워크에서 데이터를 주고 받을 수 있도록 네트워크 환경에 연결할 수 있게 만들어

웹 소켓

브라우저와 서버 사이의 동적인 양방향 연결 채널을 구성한다.
WebSocket은 TCP 위에서 동작하는 프로토콜
웹 소켓을 이용하면 하나의 HTTP 접속으로 양방향 메시지를 자유롭게 주고 받을 수 있다.

xmlhttprequest에서는 통신할 때마다 꼭 요청 헤더가 부여되기 때문에 1바이트의 정보를 송신하고 싶어도 수 킬로바이트에 달하는데 쓸데없는 정보를 보내야 한다.

채팅 입력을 한 문자마다 서버에 송신하고 싶은 경우처럼, 실시간을 추구한 애플리케이션에서는 이 점이 성능 차이로 이어질 가능성이 크다고 할 수 있다.

HTTP vs 웹 소켓 차이점

결정적인 차이는 프로토콜
웹 소켓은 접속 확립에 HTTP를 사용한다. 그 후 WebSocket 독자의 프로토콜로 이루어진다.
header가 상당히 작아 overhead가 적은 특징이 있다.

접속한 상태라면 클라이언트나 서버로부터 데이터 송신이 가능하다.
데이터의 송신과 수신에 각각 커넥션을 맺을 필요가 없다. 하나의 커넥션으로 데이터 송수신 가능

통신시 지정 되는 URL
http://www.sample.com/ ➡️ ws://www.sample.com 형식이다.

웹 소켓이 필요한 경우

  • 실시간 양방향 데이터 통신이 필요한 경우.
  • 많은 수의 동시 접속자를 수용해야 하는 경우.
  • 브라우저에서 TCP 기반의 통신으로 확장해야 하는 경우.

대역폭

1초보단 얼마나 보낼수있냐다

백본망은 여러 LAN

isP랑 백본망이랑 연결된다

TRACE

bps(비트초)
Bps(바이트초)

통신규약

ssh 리눅스

<약어정리하기>
TCP
UDP

스위치공부

라우터 : 라우팅할 수 있는 스위치

물리계층 장비가 데이터링크계층 장비에 대체되었다.

용어>

  1. 프로젝트 구조

  2. 풀로 네이밍 다 쓰기

  3. 설계를 어떻게 할지 1순위

  4. z-index 관리가 안됨

  5. 리펙토링은 메소드 단위이다.

  6. 변수명 메소드명
    -> test명도 변수명 중요

언어적인 기초, 구조적인 기초, 자바스크립트책

버그수정업무
1. 이 화면에서 어떻게 해야되는지 기능
2. 변수, 네이밍 등 구조적 파악
3. 파악 후 기능 수정

https://inpa.tistory.com/entry/WEB-%F0%9F%8C%90-%EC%9B%B9-%EC%86%8C%EC%BC%93-Socket-%EC%97%AD%EC%82%AC%EB%B6%80%ED%84%B0-%EC%A0%95%EB%A6%AC

https://appmaster.io/ko/glossary/peureonteuendeu-css-geurideu

profile
오늘보단 내일이 강한 개발자입니다!!🧑🏻‍💻

0개의 댓글