Network 개론

이도윤·2022년 12월 13일
0

Network 네트워크

상호 연결되어있는 사람들이나 사물들로 이루어진 그룹이나 시스템
사람/사물을 ‘점’으로 표시하고 그들간의 어떤 관계를 ‘선’으로 표시한 것
                                               - New Oxford American Dictionary




서론

Network : 개체(‘점’) 간의 관계 (‘선’) 을 표시한 것
Networking : 개체(‘점’) 간의 관계를 맺게 하는 것
inter - : 몇몇 낱말의 앞에서 붙여서 그 '사이'라는 뜻을 더해 주는 접두사


Inter-net(work)

     inter- : 사이

+   network : 점들을 선으로 연결한 덩어리

———————————————————

= (점들을 선으로 연결한) 덩어리 간의 연결


The Internet 의 목표

목표와 달성
0. ARPANET 이라는 네트워크와 ARPA 패킷 라디오 네트워크 연결
1. 구성하는 네트워크 중 일부가 동작하지 않아도 계속 작동해야함
2. 다양한 통신 서비스 지원
3. 다양한 네트워크 수용 가능


IP (Internet Protocol)

네트워크를 연결하는 프로토콜

참고 : 프로토콜 = “약속”
즉, 의사 소통을 위해 맞춰야 하는 것
다시 말해 “언어


Hour glass 모델. IP 는 그 중 허리

  1. 어떤 물리적 연결 기술이든 IP 만 구현하면 다양한 서비스(소프트웨어)를 돌릴 수 있다.

  2. 어떤 서비스(소프트웨어)든 IP 로만 구현하면 다양한 물리적 연결 기술로 된 네트워크에서 동작한다.




계층화

컴퓨터공학에서의 계층화 (Layering)

저수준 기능과 이를 사용해 만들어지는 고차원의 기능으로 구분


계층화(Layering)의 장점

단순화

  • 각 계층은 자기가 제공할 기능만 생각하면 된다. (functionality)
  • 각 계층은 자기 바로 아래 계층을 어떻게 쓰는지만 알면 된다. (interface)
  • 문제 해결의 편의성
  • 문제가 있는 계층만 디버깅하면 된다.
  • 각 계층이 단순하기 때문에 문제를 해결하기도 쉽다.

진화의 편의성

  • 각 계층은 바로 위 계층에 알려준 “어떻게 쓰는지”만 유지하면 된다.
  • 그 안에서 자유롭게 기능을 개선/추가 할 수 있다.
  • 컴퓨터 공학의 격언 “계층 추가하면 뭐든 쉽게 해결 가능”

계층화(Layering)의 단점

잠재적 비효율성

  • 각 계층을 넘나드는 것이 비효율적일 수 있다.
  • 바로 아래 계층이 아니라 아래아래 계층처럼 계층을 건너뛰어야 될 때 괴롭다.
  • 어떤 계층을 건드리면 그 것을 사용하는 그 위의 모든 계층이 영향을 받는다.

계층화(Layering)에서의 황금률

하위 계층에 뭘 넣지 마라.
그게 성능상 절대적으로 필요한 것이 아니라면…




























profile
Java 백엔드 개발자

0개의 댓글