본문 바로가기
public void static main()/Lecture

[HTTP웹기본지식] HTTP_01

by 햄리뮤 2021. 1. 5.
반응형

오늘 강의, 공부한 내용 정리

찾아보면서 따라친것들!

 

IP (Internet Protocol)

 

의미

- 각 장치를 나타내는 IP 주소를 가리키는 말. (장치들의 주민등록번호)

 

역할

- 지정한 IP 주소에 데이터를 전달한다.

- 패킷(packet)이라는 통신 단위로 데이터를 전달한다. 

[출처] 김영한 강사님 강의

- 호스트에서 호스트까지의 통신, 즉 보내는 컴퓨터에서 받는 컴퓨터까지의 통신을 책임진다!

ex) 편지 봉투에 보내는 주소, 받는 주소를 작성하고 우표를 붙여서 우체동에 넣는 일과 우편함에 들어온 편지를 꺼내서 나한테 온 편지가 맞는지 확인하는 정도의 작업.

- IP를 통하지 않고 현 인터넷을 통해 통신한다는 건 불가능!

 

한계

- 비연결성

   -> 패킷을 받을 대상이 없거나 서비스 불능 상태여도 상관없이 패킷을 전송한다.

- 비 신뢰성 

   -> 중간에 패킷이 사라질수도있다

   -> 패킷이 순서대로 도착하지 않을 수도 있다.

- 프로그램 구분

   -> 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면 어느 IP로 가야하나?

 

TCP/IP의 문제점 - [출처] http://i-bada.blogspot.com/2012/04/tcpip.html

TCP에 관해서 공부하기 전 

인터넷 프로토콜의 계층을 볼 필요가 있다! (라고 강사님이 말씀하셨다)

 

인터넷 프로토콜 4계층 - [출처] https://ming9mon.tistory.com/2

각층의 기능

 

네트워크 계층(Network Access Layer) :  Ethernet, Wi-Fi, Token ring

- TCP/IP 패킷을 네트워크 매체로 정달하는 것과 네트워크 매체에서 TCP/IP 패킷을 받아들이는 과정을  담당한다.

기본적으로 에러검출 / 패킷의 프레임화를 담당.

- OSI 7계층의 물리계층과 데이터 링크 계층에 해당한다.

물리적인 주소로 MAC을 사용. LAN, 패킷망 등에 사용됨!

 

인터넷 계층 (Internet Layer): IP (IPv4. IPv6)

- 논리적인 주소 IP를 이용한 노드간 전송과 라우팅 기능을 처리하게 된다. 네트워크상 최종 목적지까지 정확하게 연결되도록 연결성을 제공함!

 

전송 계층(Transport Layer): TCP, UDP, DCCP, SCTP 등

- 자료의 송수신을 담당한다. 애플리케이션 계층의 세션과 데이터그램 통신서비스를 제공

- 통신 노드간의 연결을 제어하고 신뢰성 있는 데이터 전송을 담당한다.

 

응용 계층(Application Layer): DNS, TFTP, TLS/SSL, FTP, HTTP, IMAP

- 다른 계층의 서비스에 접근할 수 있게 하는  application계층을 제공한다. Application들이 데이터를 교황하기위해 사용하는 protocol을 정의.

- TCP/UDP 기반의 응용 프로그램을 구현할 때 사용한다.

 

IP는 인터넷 계층 / TCP, UDP는 전송계층 쪽에 있다!

예를들어 내가 친구한테 어떠한 단어를 채팅 프로그램을 통해서 보내면

그 단어가 전송계층으로 넘어가서 TCP로 한번 포장된후

인터넷 계층으로 또 넘어가서 IP로 한번 더 포장됨! (패킷)

그후 LAN카드를 통해서 나갈때 이더넷 프레임을 들고서 나간다! (그렇구나! 근데 잘모르겠다 데헷 >_<)

 

여기서 잠깟! 패킷 이란! 패키지 + 버킷 을 합친거! (구나... 강사님이 알려줘서 알았음...)

대표 사진쓰려고 가져옴 [출처] https://www.journaldev.com/38467/difference-between-tcp-and-udp-protocols

TCP 특징 (Transmission Control Protocol)

<인터넷상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜>

(강의)

- 연결지향 - TCP 3-way handshake(가상연결)

- 데이터 전달 보증

- 순서 보장

- 신뢰할 수 있는 프로토콜

- 현재는 대부분 TCP 사용

 

(따로 구글링해봄)

- 연결형 서비스로 가상회선 방식을 제공

- 흐름제어 및 혼잡 제어

- 높은 신뢰성을 보장한다.

- UDP보다 속도가 느리다

- 전이중 (Full-Duplex), 점대점(Point to Point) 방식

 

UDP 특징 (User Datagram Protocal)

<데이터를 데이터그램 단위로 처리하는 프로토콜>

! 데이터 그램이란 독립적인 관계를 지니는 패킷이라는 뜻. TCP와 달리 UDP는 비연결형 프로토콜.

연결을 위해 할당되는 논리적인 경로가 없다! 그렇기 때문에 각각의 패킷은 다른경로로 전송됨! 그러므로 각각의 패킷은 독립적인 관계를 갖게되는데 이러한 프로토콜을 UDP라고함! (내가말한건아니고.. mangkyu.tistory.com/15 여기에서...)

- 비연결형 서비스로 데이터그램 방식을 제공

- 정보를 주고 받을 때 정보를 보내거나 받는다는 신호 절차를 거치지 않음.

- UDP헤더의 CheckSum 필드를 통해 최소한의 오류만 검출

- 신뢰성이 낮다 (나의생각: 아~ 최소한의 오류만 검출해서 신뢰성이 낮은가봐)

- TCP보다 속도가 빠르다 (나의생각: 아~ 최소한의 오류만 검출해서 속도가 빠른편인가봐)

 

TCP와 UDP의 비교 [출처] https://mangkyu.tistory.com/15

위에 정리해놓은 TCP/UDP 관련 자세한 내용은

mangkyu.tistory.com/15에 들어가시면 자세히 나와있습니다!

 

 

 

오늘의 생각 정리: 아~ 어렵다~~ 강의는 금방 들었는데 정리하는게 오래걸리네... 다들.. 이렇게 공부하는거겠지..? 그런거겠지? 모두들 그런가요? 다들 이렇게 저처럼 오래걸리나요? 강의 20분들었는데 정리하는게 한 1시간 30분 정도 걸리는 나는 몽총이인것인가! 저렇게 정리했는데도 뒤돌면 까먹는 나는 무엇인가! 아메바인가!

 

 

 

 

 

 

공부에 도움을 주신 모든 분들 너무너무 감사드립니다! (-_-) (_ _) 꾸벅

 

[출처] 김영한 강사님 강의

www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/lecture/61344?tab=curriculum

 

모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런

실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다. 초급 기타 교양 ・ 기타 웹 개발 네트워크 웹 개발 Back-End 온라인 강의 프론트엔드/백엔드, 웹/모바일 앱 개발 등 웹 기

www.inflearn.com

[출처] namu.wiki/w/IP

 

IP - 나무위키

Address Resolution Protocol  자세한 내용은 ARP 문서 를 참고하십시오. IP 계층에서는 수신 측의 링크 속도를 고려하여 하나의 완전한 패킷을 MTU 크기 이내로 단편화할 수 있다. 이렇게 하여 한정된 링

namu.wiki

[출처] hahahoho5915.tistory.com/15

 

TCP/IP 4계층(TCP/IP 4 Layer)

TCP/IP (Transmission Control Protocol / Internet Protocol) 현재 수많은 프로그램들이 인터넷으로 통신하는데 있어 가장 기반이 되는 프로토콜로 실제 대다수 프로그램은 TCP와 IP로 통신하고 있다. ARPANET..

hahahoho5915.tistory.com

[출처] mrnamu.blogspot.com/2019/11/2-tcpip-4.html

 

네트워크의 기본 #2 - TCP/IP 4계층

소프트웨어에 대한 모든 것을 다루는 블로그입니다.

mrnamu.blogspot.com

[출처] http://mangkyu.tistory.com/15

 

[TCP/UDP] TCP와 UDP의 특징과 차이

오늘은 네트워크의 계층들 중 전송 계층에서 사용하는 프로토콜에 대해서 알아보려고 합니다. 전송계층은 송신자와 수신자를 연결하는 통신서비스를 제공하는 계층으로, 쉽게 말해 데이터의

mangkyu.tistory.com

 

** 그냥 하루하루 개인 공부한 것을 끄적 거리는 공간입니다.

이곳 저곳에서 구글링한 것과 강의들은

내용이 정리가 되었습니다.

그림들은 그림밑에 출저표시를 해놓았습니다.

문제가 될시 말씀해주시면 해당 부분은 삭제 하도록하겠습니다. **

반응형

댓글