Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Network/seogeurim #20

Merged
merged 14 commits into from
Mar 22, 2021
Merged

Network/seogeurim #20

merged 14 commits into from
Mar 22, 2021

Conversation

Seogeurim
Copy link
Owner

@Seogeurim Seogeurim commented Mar 4, 2021

변경 사항

Issue 참고 : Note Status Check

  1. OSI 7 계층 이론 정리
  2. TCP 3-way-handshake & 4-way-handshake 이론 정리
  3. HTTP 요청 방식 - GET, POST 이론 정리
  4. HTTP 요청 방식 질의응답

Point of discussion

오타나 잘못된 부분이 있을 경우 언급 부탁드립니다 !

Reference

@Hee-Jae
Copy link
Collaborator

Hee-Jae commented Mar 14, 2021

오타를 발견했습니다.
쉽게 말하면 **네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것**을 말한다. 계층 모델에 의해 **프로토콜도 계층별로 구성**된다. 현재 네트워크 시스템의 기반이 된 모델이며 다양한 시스템은 이 계층 모델을 기반으로 통신한다. (현재의 인터넷은 각 계층의 역할들이 합쳐지면서 TCP/IP 4 계층 모델을 기반으로 한다.)
현재의 인터넷은 TCP/IP 5계층 (Application-Transport-Network-Datalink-Physical) 모델을 기반으로 합니다.

@Seogeurim
Copy link
Owner Author

@Hee-Jae
앗 !! 제가 다시 정확하게 찾아보고 수정하여 업로드하겠습니다 !! 감사합니당 ~

Copy link
Collaborator

@KimKwon KimKwon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

핸드쉐이크 과정을 말로 잘 풀어서 설명해주셨네요 !

contents/network/README.md Outdated Show resolved Hide resolved
@Seogeurim
Copy link
Owner Author

Seogeurim commented Mar 18, 2021

@Hee-Jae

현재의 인터넷은 TCP/IP 5계층 (Application-Transport-Network-Datalink-Physical) 모델을 기반으로 합니다.

이 부분 어디에 가면 제대로 볼 수 있을까요? ㅠㅠ 어디에서는 4계층이라 하고, 어디에서는 5계층이라고 하네용 ㅠㅠ !! 도움을 요청합니당 !!

@ggjae
Copy link
Collaborator

ggjae commented Mar 18, 2021

@Seogeurim 찾았어요!!!

https://tools.ietf.org/html/rfc1122
RFC1122, RFC1123 공식문서에서는 link layer, IP layer, transport layer, application layer 네개로 나누고 있네요. 피지컬 레이어(1계층)을 링크 레이어로 묶어서 설명하는 듯 해요. 한번 확인해보세요!

@Seogeurim
Copy link
Owner Author

@ggjae
헐 우와 !! 역시 공식 문서로 찾아야 하는 거였네요 ! Internet Protocol Suite라는 이름으로 찾아야했구나 ㅠ 내일 한 번 읽어보고 공부한 뒤 업로드하겠습니다 !!!

@Hee-Jae
Copy link
Collaborator

Hee-Jae commented Mar 19, 2021

@ggjae 아.. 네트워크 강의때 5계층으로 배워서 무조건 5계층인줄 알았는데 공식문서에서 피지컬과 데이터링크를 묶어 놨군요... 새로 배워갑니다ㅎㅎ
@Seogeurim 널리 쓰이는 네트워크 전공 서적에서는 5계층으로 소개를 많이 해주던데 공식문서에서 4계층으로 분류를 하니 내용적인 면에서는 큰 오류는 없는 것 같아요. 내용 수정 안하셔도 될 것 같습니다.

Copy link
Collaborator

@ggjae ggjae left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

잘 읽었습니다. 덕분에 네트워크를 다시 한번 되돌아봤어요.
살짝만 수정 부탁드립니다! 답변 돌아오는 즉시 approve 하겠습니다. 혹시라도 쉼표나 세세한 사항에서는 수정하지 않으셔도 괜찮습니다 (__)

contents/network/README.md Outdated Show resolved Hide resolved
- HTTP 패킷의 Body는 비어 있는 상태로 전송한다. 즉, Body의 데이터 타입을 표현하는 Content-Type 필드도 HTTP Request Header에 들어가지 않는다.
- 요청 데이터가 그대로 url에 노출되므로 사용자가 쉽게 눈으로 확인할 수 있어 POST 방식보다 보안상 취약하다. 보안이 필요한 데이터는 GET 방식이 적절하지 않다.
- GET 방식은 캐싱을 사용할 수 있어, GET 요청과 그에 대한 응답이 브라우저에 의해 캐쉬된다. 따라서 POST 방식보다 빠르다.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GET방식을 사용하는 예시도 들어가면 이해가 훨씬 편할 것 같아요! 위에 url address에서의 예시는 이름으로 되어있지만 우리가 실생활에서 접할 수 있는 것들 있잖아요! ex) https://google.com/search?q=서그림
'GET 방식은 캐싱을 사용할 수 있어'가 처음엔 어떤 캐싱인지 몰랐는데 저는 예제를 찾아보다가 이해가 훨씬 쉬워졌어요.
예를 들면 https://www.google.com/search?q=박재용 이라고 검색을 한번 하면? '박' 만 적어도 '박재용'이 캐시에 담겨있는 느낌이겠죠?

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

넹 예시를 넣는 것 엄청 좋은 것 같아요 ! 추가하겠습니당 !!
캐싱은 GET 해온 데이터가 캐시되는 것이라고 이해했는데, 설명한 이름 검색 예시는 요청 정보도 캐시가 되는 것인가요 ? 자세히 설명해주실 수 있나요 !!?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

제가 말한 건 쿠키인 것 같아요. 그림님이 이해하신게 정확합니다! 예시를 잘못 얘기해드렸네요!!

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

넹 ~~~ !

1. 설계 원칙에 따라 GET 방식은 서버에게 여러 번 요청을 하더라도 동일한 응답이 돌아와야 한다.
- _Idempotent, 멱등성 : 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질_
- GET 방식은 "가져오는 것"으로, 서버의 데이터나 상태를 변경시키지 않아야 한다.
(ex. 게시판의 리스트, 게시글 보기 기능 | 예외. 방문자의 로그 남기기, 글을 읽은 횟수 증가 기능)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

여기에 제가 위의 말한 example이 여기 있네요..! 예시들을 위에서 설명해줘도 괜찮을 것 같아요!

@Seogeurim
Copy link
Owner Author

@ggjae 다 수정해서 커밋했습니당 어푸룹 주세요 ~~~

@Seogeurim Seogeurim added the score NEED Score Board 업데이트 필요 label Mar 22, 2021
@yoongoing yoongoing merged commit 92a1c14 into main Mar 22, 2021
@KimKwon
Copy link
Collaborator

KimKwon commented Mar 25, 2021

Seogeurim: 이론*3 + 질의응답1 = +50
ggjae, Hee-Jae, KimKwon: Pr리뷰 각각 +5

@KimKwon KimKwon added score OK Score Board에 점수 반영 완료 and removed score NEED Score Board 업데이트 필요 labels Mar 25, 2021
@Seogeurim Seogeurim deleted the Network/Seogeurim branch September 4, 2021 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
score OK Score Board에 점수 반영 완료
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants