내일배움캠프 7기

Spring 7기 11일차(웹)

suuuki 2024. 10. 15. 21:10

나무반 강의


Web

 

프로토콜(protocol)

=누군가 정해둔 약속

HTTP Hyper Text Transfer Protocol

 

IP =Internet protocol

컴퓨터끼리 통신할때 누구인지 판단을 

네트워크 통신을 위한 id 같은것

네트워크 통신을 위한 장비는 반드시 하나의 IP를 지정 받음

인터넷도 IP 체계 이용

네이버 구글 카카오 서버 모두

 

 

Packet

패킷은 전달하는 작은 데이터 조각을 의미

package(패키지)와 비슷한 의미로 이해 하면 편하다

 

IP통신 문제점

비연결성: 수신 대상의 현재 상태에 상관없이 정송

비신뢰성: 많은 과정을 거치다가 데이터가 소실

용량이 크면 여러 패킷으로 나위어 전송하지만 도착하는 순서가 바뀜

 

->문제 해결위해 TCP 프로토콜 만듬

 

TCP vs UDP

TCP: Transmission Control Prorocol

UDP:User Datagram Protocol

 

TCP

신회성이 있지만 연결과정, 유실체크등으로 인해 상대적으로 느리다

장점

  • 3-way handshake로 연결수립
  • 데이터 순서 보장과 손실 복구(재전송)
  • 흐름 제어와 혼합 제어 기능 제공

 

UDP

UDP는 신회도는 떨어지지만 속도가 빠르다

앞서 알아본 IP방식과 비슷

TCP와 다르게 데이터 유실이 될 수 있음

 

통신 할 때 일부분 유실이 되어도 괜찮은 경우

ex)실시간 스트리밍 서비스, 온라인 게임, 인터넷 전화

 

IP는 단순 호스트간 통신만 지원

UDP는 PORT를 지원하고, 데이터 무결설 검사도 가능

 

.

 

PORT
이전에는 ip를 통해 패킷을 전달하여 통신

ip=장치 하나가 부여받는주소

 

ip는 특정장치까지는 특정할 . 수있으나, 그 장치 안에 누가 데이터 받을지는 특정할 수 없음

->이때 필요한게 포트

 

포트의 범위

포트는 0~65,535하나의 장치에서 서로 다른 프로그램이 동일한 포트 쓸 수 없음

 

 

 

DNS

Domain Name Service

IP가 변경되기 때문에, IPsms qlffu Tmsms flthtm 는 빌려쓰는 리소스

대부분 점유를 하면 오래쓰긴 하지만, 할당 받은 IP가 평생 쓰이는 것은 보장되지 않고 반드시 변경됨

-> 이 경우 IP주소 다시 외워야하기 때문에, DNS 써야함

 

URL/URI

 

 

HTTP,HTTPS

HTTP 특징

-비연결설(Connectionless)

연결을 유지하지 않음

인터넷이 종료되어도 페이지가 유지

<->반대: 게임 서버

-무상태(Stateless)

서버가 이전 요청 상태를 기억하지 않음

각각의 요청이 독립적으로 처리

서버는 클라이언트의 이전 요청 정보를 알지 못한 채 매번 새로운 요청으로 처리

 

HTTPS
http의 보안버전

-통신이 암호화 되어 중간에 가로채어도 내용을 알 수없음

-전송 중 데이터가 수정되거나 변조되지 않도록 보장

-SSL/TSL 인증서를 사용하여 접근하는 사이트가 진짜인지 확인할 수 있음

 

 

REST(FUL API)

 

사람끼리 오해를 방지하고 최대한 명확하게 소통과 협업을 하기 위한 하나의 약속

하지만 표준화된 약속은 없음

팀, 회사, 사람, 나라, 문화마다 전부 다르다. 내가 속한속의 약속을 지키면 됨

 

어느정도의 가이드라인