카테고리 없음

컴퓨터 네트워크 조사과제

미 누 리 2022. 4. 19. 15:13

IoT

1. IoT

IoT란?

 IoT는 Internet of things의 약자로 인터넷에 연결되어 IoT 애플리케이션이나 네트워크에 연결된 장치, 또는 산업 장비 등의 다른 사물들과 데이터를 주고받을 수 있는 수많은 '사물'을 말한다

 

현대 사회의 IoT

현재 IoT는 여러 산업 분야에서 사용되고 있는데, 소비자의 요구사항을 실시간으로 이해하고, 신속한 대응과 개선으로 혁신적인 운영방식을 모색한다.

2. Ubiquitous computing

유비쿼터스 컴퓨팅이란?

Ubiquitous(신은 어디에나 있다) + Computing, 언제 어디서든 어떤 기기를 통해서도 컴퓨팅할 수 있는 것을 의미한다. 

 

유비쿼터스 컴퓨팅의 개념

  • 끊김 없는 연결
    모든 사물이 네트워크에 끊이지 않고 항상 연결되어 있어야 한다. 
  • 사용자 중심 인터페이스
    사용자가 기기 사용에 있어서 어려움 없이, 처음 저하는 사람을 포함해 누구나 쉽게 사용할 수 있는 인터페이스가 제공되어야 한다.
  • 컴퓨팅 기능이 탑재된 사물
    가상 공간이 아닌 현실 세계의 어디서나 컴퓨터의 사용이 가능하야 한다.
  • 의미론적 상황인지 동작
    사용자의 상황에 따라 서비스가 변해야 한다.

 

3. Wearable Technolodge

웨어러블 기술이란?

IT기기를 손, 팔, 머리 등 몸에 지니고 걷고, 뛰고 움직일 수 있도록 만드는 기술

 

우리 주변의 웨어러블 기술 

스마트폰, 블루투스 이어폰, 스마트워치 등등

 

4. Sensor Network

센서 네트워크란?

수많은 소형의 센서 노드들이 네트워크에 연결되어 있는 것. 각각의 노드들은 컴퓨팅 능력, 초경량 그리고 저전력의 능력을 갖추고 있으며 응용 환경에 배치되어 스스로 네트워크를 형성한 후 정보를 습득한다. 이 정보들을 통해 감시 제어하는 용도로 사용한다. 
 좁은 의미로는 센서로 감지가 가능한 정보를 수집하고, 수집된 정보를 그대로 또는 가공하여 무선장치를 이용해 외부로 전달하는 일련의 시스템이지만, 넓은 의미로 보자면 센서 노드 하드웨어에 들어가는 운영체제, 미들웨어 그리고 모니터링 시스템까지를 모두 포함하는 시스템이다. 


Application S/W 개발 기술

1. Client 개발 언어

  • HTML
    Hyper Text Markup Language의 약어이다. 웹 페이지에서 다른 페이지로 이동할 수 있도록 하는 기능을 가진 문서를 만드는 언어이다. 구조를 설계할 때 사용되는 언어이고 Hyper Link 시스템을 가지고 있다.
  • JavaScript
    객체 기반의 스크립트 프로그래밍 언어이며, HTML과 CSS로 만들어진 웹페이지를 동적으로 변경해주는 역할을 한다. 주로 웹 브라우저에서 사용되나(클라이언트쪽의 스크립트 대표주자), 특정 프레임워크를 사용하면 서버 측 프로그래밍에서도 사용이 가능하다. 
  • CSS
    Cascading Style Sheets의 약어이다. HTML이나 XML로 작성된 문서의 표시 방법을 기술하기 위한 스타일 시트 언어이다. 즉, 웹페이지를 꾸미기 위해 작성하는 코드.

-> HTML로는 웹의 내용을 작성하고, CSS로는 웹을 디자인하며, Java Script로는 웹의 동작을 구현한다.

 

2. Sever 개발 언어

  • ASP
    Active Server Page의 약자이며, 동적으로 서버에서 작동하는 페이지를 의미한다. 자바스크립트와 반대로 서버 측에서 작업의 처리를 위해 사용하는 언어이다. 
  • JSP
    Java Server Pages의 약자이며, HTML 코드에 JAVA 코드를 넣어 동적 웹페이지를 생성하는 웹 어플리케이션 도구이다. 자바의 점유율에 큰 기여를 한 언어이고 주로 대규모 기업용 시스템 구축에 사용된다.
  • Php
    원래는 Personal Home Page Tools였으나, 지금은 PHP: HyperText Preprocessor의 재귀 약자를 사용하고 있다. 대표적인 서버 사이드 스크립트 언어이며 전 세계 수많은 웹 시스템의 기반이 되는 언어이다. 웹 페이지 제작 시 기본적으로 웹 관련 함수들이 많아 생산성이 높고, 사용처가 많다는 장점이 있다. 주로 커뮤니티와 쇼핑몰 사이트에서 주로 사용된다.

3. 웹 개발 언어 및 기술

  • Ruby
    동적 객체 지향 스크립트 프로그래밍 언어이다. 순수 객체지향 언어이며 이로인해 데이터 형식 등 모든 것이 객체이다. 이 언어는 이식성이 매우 높다는 장점이 있다.
  • Spring Framework
    자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크이다. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공한다. 예를 들어 경량 컨테이너로 자바 객체를 담고 직접 관리한다. 

C/S architecture

C/S architecture란?

클라이언트/ 서버 방식. 클라이언트는 서비스에 대한 요구자이며, 서버는 서비스에 대한 제공자이다. 이 형태로 네트워킹하여 자원을 공유하는 구조를 C/S구조라고 한다. 클라이언트는 서버에게 자신이 원하는 자료를 요청하고, 서버는 클라이언트에서 요청된 자료를 보내준다. 

Client Server
서버와 통신, 항상 연결되어 있을 필요는 없음 항상 대기 상태
동적 또는 사설 IP 고정 IP
  크기 조정을 위한 데이터 센터
Client끼리는 통신 불가 클라우드 컴퓨터

 

장점

  • 중앙 집중적으로 서버에 의해서 모든 사용자명과 암호가 관리되어 그 어떤 사용자고 자원에 접근하기 위해서는 접근 허가를 얻어야 한다.
  • 서버에 의해 관리되므로 클라이언트가 추가되더라도 관리 측면에서 문제가 발생하지 않는다.

단점

  • 고가
    서버와 운영체제의 가격이 비싸다.
  • 위험부담
    서버가 다운됬을 경우 연결된 클라이언트들이 전혀 동작하지 않게 된다.
  • 네트워크 지연
    많은 컴퓨터가 서버에게 동시에 데이터 요청을 할 때 네트워크 지연이 발생될 수 있다.

 

P2P

P2P란?

 인터넷에 연결된 다수의 개별 사용자들이 중개 기관을 거치지 않고 직접 데이터를 주고받는 것을 말한다. 네트워크에 연결된 모든 Host들은 서로 대등한 위치에서 데이터나 주변장치 등을 공유할 수 있다는 의미이다. 또한 Host가 클라이언트가 될 수도 있고 서버가 될 수도 있다. 
 피투피는 피투피 금융, 블록체인 등에 사용되고 있으며 가장 흔하게 우리 일상에 있는 것은 영화를 다운받는 사이트의 경우를 생각해보면 되겠다. 

장점

  • 높은 확장성 
    P2P의 가장 큰 장점이다. 클라이언트 서버 구조와 달리 모든 단말이 동일하지만 특별한 기능과 역할을 가진 단말이 존재하지 않으므로 연결하는 사용자 수가 방대해져도 특정 단말에 부가 집중되지 않는다. 
  • 낮은 요구 비용
    클라이언트 서버 방식과 달리 요구되는 서버 장치 성능이 낮아지고, 통신 회선도 저렴한 회선만이 필요하다. 

단점

  • 받기만 하고 줄 생각은 없는 사용자가 있을 수 있으며, 이를 위한 해결책들이 준비되어 있다. 
  • 저작권 문제가 있을 수 있다. 불법 피투피가 퍼지면 오프라인 콘텐츠 판매가 타격을 입게 된다.
  • 각종 불법 행위가 있을 수 있다. 예를 들어 투자자와 대출자를 온라인에서 연결하면 법적 구속력이 떨어지게 된다.

Cloud computing

클라우드 컴퓨팅이란?

클라우드 컴퓨팅은 인터넷을 통해 서버, 스토리지, 데이터베이스, 네트워킹, 소프트웨어, 분석 등의 컴퓨팅 서비스를 제공하는 것이다. IT 리소스를 인터넷을 통해 제공받고 사용한 만큼만 비용을 지불하는 것이다. 

장점

  • 클라우드 컴퓨팅을 사용하면 사용한 클라우드 서비스에 대해서만 요금을 지불하므로 비용을 절감할 수 있다.
  • 광범위한 기술에 쉽게 접근할 수 있으므로, 혁신과 구축이 쉬워진다. 
  • 배포가 매우 빨라진다. 

유형

  • Infrastructure as a Service(IaaS)
    클라우드 IT를 위한 기본 빌딩 블록이 포함되며, 네트워킹 기능, 컴퓨터, 및 데이터 스토리지 공간에 대한 액세스를 제공한다. 즉, IaaS는 IT 리소스에 대한 최고 수준의 유연성과 관리 제어 기능을 제공한다.

  • Platform as a Service(PaaS)
    기본 인프라(HW, OS)를 관리할 필요가 없어 애플리케이션 개발과 관리에 집중할 수 있다. 즉, 애플리케이션 실행과 관련된 여러 작업들, 예를 들어 리소스 구매라던지 소프트웨어 유지관리 등과 같은 획일적인 작업에 대한 부담 없이 효율적으로 운영할 수 있게 해준다.

  • Software as a Service(SaaS)
    서비스 공급자에 의해 실행되고 관리되는 완전한 제품을 제공한다. 보통 웹 기반 이메일과 같은 최종 사용자 애플리케이션을 말한다. 사용자는 서비스를 유지 관리하는 방법이나 기본 인프라를 관리하는 방법에 대해 생각할 필요 없으며, 특정 소프트웨어를 어떻게 사용할지만 생각하면 된다.

IPC

IPC란?

Inter Process Communication의 약자로, 한 PC내에서 네트워크의 개입 없이 이루어지는 프로세스 간 통신을 말한다.

IPC 종류

출처 : https://doitnow-man.tistory.com/110

 


Java Applet vs. Java Script

  Java Applet Java Script
정의 별도의 웹 브라우저를 통해 실행이 가능한 작은 의미의 자바 응용 프로그램
자바 언어로 작성된 소프트웨어
소스코드가 HTML 문서 중에 포함되어 사용자의 브라우저에서 직접 번역되어 수행되는 언어
사용자의 입력을 제어하거나 브라우저의 여러 기능을 제어
환경 자바가상머신(JVM)을 내장한 웹 브라우저 웹 브라우저가 실행되는 모든 OS 환경
객체 지향 객체 지향 기반이고, 클래스 중심 객체 지향 기반 클래스나 상속성은 없음
변수 선언  변수 타입 미리 선언 필요 변수 타입 선언 없이 사용 가능
바인딩 정적 바인딩 : 컴파일 시 검사 동적 바인딩 : 객체에 대한 참조는 실행 시에만
장점 - 크기가 작아 네트워크에서 전송 용이 - 사용자에게 메시지를 보내거나 확인 가능
- 자바와 연동하여 사용 가능
- 쿠키를 이용해 페이지간에 데이터 이동 가능
- 사용자의 입력을 제어, 브라우저의 여러 기능을 제어
- 윈도우와 프레임을 생성, 제어
- 마우스 버튼 클릭, 홈페이지 로딩등의 이벤트 처리
- 등등

참고 : https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sunny523&logNo=220449873366

-> 두 개는 차이점을 비교하기보단 둘 다 다른 종류의 용어인 것 같다.

 


URI & URL & URN

  URI URL URN
풀네임 Uniform Resource Identifier Uniform Resource Locator Uniform Resource Name
정의 - 통합 자원 식별자

- 인터넷 자원을 식별할 수 있는 문자열

- 인터넷에 있는 자원을 나타내는 '유일한' 주소
- 네트워크 상에서 웹페이지, 이미지, 동영상 등의 파일이 위치한 정보

- 어떻게 리소스를 얻을 것이고 어디서 가져와야 하는지 명시하는 URI
-> URI는 식별하고, URL은 위치를 가리킨다
- 이름으로 리소스를 특정하는 URI

- 리소스를 어떻게 접근할지 명시하지 않고 경로와 리소스 자체를 특정하는 목적
구조 scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]

1. scheme : 사용할 프로토콜을 뜻하며 웹에서는 http 또는 https를 사용

2. user와 password : (서버에 있는) 데이터에 접근하기 위한 사용자의 이름과 비밀번호

3. host와 port : 접근할 대상(서버)의 호스트명과 포트번호

4. path : 접근할 대상(서버)의 경로에 대한 상세 정보

5. query : 접근할 대상에 전달하는 추가적인 정보 (파라미터)

6. fragment : 메인 리소스 내에 존재하는 서브 리소스에 접근할 때 이를 식별하기 위한 정보
   

HTML & HTML5

  HTML HTML5 
~란? - 웹 페이지를 인터넷에 표시하는 데 사용되는 마크업 언어 - HTML의 개정판

- 웹 페이지의 내용과 모양을 설명

- WWW에서 콘텐츠를 구성하고 표시하는 데 사용
작동 환경 구형 브라우저에서 잘 작동 신형 브라우저에서 잘 작동

XML

XML이란?

eXtensible Markup Language의 약어로, 다른 특수한 목적을 작는 마크업 언어를 만드는데 사용하도록 권장하는 다목적 마크업 언어이다. 주로 다른 종류의 시스템, 특히 인터넷에 연결된 시스템끼리 데이터를 쉽게 주고 받을 수 있게 하여 HTML의 한계를 극복할 목적으로 만들어졌다. 

 

XML 기반 언어

  • RDF
  • RSS
  • Atom
  • MathML
  • XHTML
  • SVG