SlideShare a Scribd company logo
1 of 15
시스템 프로그램 설계1 최종발표
Network
Attached
Devices
한양대학교 컴퓨터전공
2012003738 차정민
2009004311 주경민
발표 목차
프로젝트의 개요
기존의 목표 및 발전 사항
프로젝트 세부 사항 (구현)
구현 시뮬레이션
어려웠던 점 / 배운 점
프로젝트의 개요
 공유기에 연결된 네트워크 저장 장치들을 통합하여 사용 할
수 있도록 만들어보자!
 공유기에 연결되어 인터넷을 리스하는
모든 장치들을 원격으로 접속하여 파일시스템을 관리함.
 공유기를 통해 연결되어 있는 장치들을 통합된 인터페이스
로 관리한다.
기존의 목표
 중간 제안에서는 기존의 NAS(Network-attached storage)를
공유기와 기타 네트워크 장치를 통해 구현하는 것이 목표였
음.
 스마트 폰과 OpenWrt 조합을 통해 스마트 폰의 확장성을 이
용하여 부가적인 기능을 활용.
 (NAS 그림 인터넷에서 하나 따와서 붙일 것)
발전 사항
 접근할 수 있는 네트워크 저장 장치가 하나가 아니라, 공유기
에 접속하고 있는 네크워크 장치들을 통합한다.
 공유기에 접속해 있는 다수의 네트워크 저장 장치
 공유기를 통한 접근으로 용이한 외부로부터의 접근
 외부에서도 다양한 네트워크 저장 장치들을 공유기를 통해
관리가 가능해진 것.
상황 그림 하나 넣을 것
프로젝트 세부 사항 (1)
 클라이언트 프로그램은 모든 웹브라우저 내에서
작동하는 웹앱 형태로 구현함.
 파일 시스템을 관리하는 것은 아무나 하면 안되므로
로그인 기능 구현
 로그인 후 메인 페이지에서 네트워크 저장 장치 관리
프로젝트 세부 사항 (2)
 메인 페이지 상단에는
파일 시스템의 목록
 메인 페이지 중간에는
파일 시스템 관리 창
 네트워크 저장 장치는 네트워크 드라이브 마운트를 통해
OpenWrt와 연결
프로젝트 세부 사항 (3)
 파일 시스템의 목록의 마지막에는 늘 “+”로 파일 시스템을
추가하는 기작의 버튼이 있음.
 파일 시스템을 등록할 때, 파일 시스템의 로컬 주소, 사용할
포트, 파일 시스템에 접속하는 유저이름, 비밀번호, 파일시스
템의 이름 등을 입력 받고, 데이터베이스에 저장.
 파일 시스템을 등록하는 시점에서, 등록한 파일시스템이 사
용가능한 상태인지 판단하여 알려줌.
어려웠던 점 (1)
 처음에는 파일 관리를 ftp 접속으로 하려고 했으나, 외부에서
는 로컬내의 네트워크 저장 장치 접근이 어려움.
 파일 다운로드를 위해서는 직접적인 접근이 요구되어 부담
이 증가
 크로스 도메인 문제
 리스팅/업로드/다운로드/수정/삭제를 직접 구현함.
 마운트를 통해 직접 해당 장치의 파일 시스템을 관리
어려웠던 점 (1)
 크로스 도메인 문제
 처음에는 파일 관리를 ftp 접속으로 하려고 했으나, 외부에서
는 로컬내의 네트워크 저장 장치 접근이 어려움.
 파일 다운로드를 위해서는 직접적인 접근이 요구되어 부담
이 증가
 리스팅/업로드/다운로드/수정/삭제를 직접 구현함.
 데이터 베이스에는 등록된 리스 디바이스들의 로컬 주소가
저장. 단순히 ftp 접속으로 하는 경우 실제 IP 주소가 필요함.
 따라서 마운트를 통해 직접 해당 장치의 파일 시스템을 관리
어려웠던 점 (1)
 크로스 도메인 문제
어려웠던 점 (1)
 처음에는 파일 관리를 ftp 접속으로 하려고 했으나, 외부에서
는 로컬내의 네트워크 저장 장치 접근이 어려움.
 파일 다운로드를 위해서는 직접적인 접근이 요구되어 부담
이 증가
 크로스 도메인 문제
 리스팅/업로드/다운로드/수정/삭제를 직접 구현함.
 마운트를 통해 직접 해당 장치의 파일 시스템을 관리
 CIFS(Common Internet File System)
어려웠던 점 (2)
 디바이스가 현재 공유기에 물려있는지 확인하려면 공유기
시스템 정보를 가져와야 함.
 장치의 네트워크 연결 외에 마운트 상황을 확인해야 함.
 어차피 웹사이트가 php로 구현되었으므로, php를 이용해서
시스템 파일에 접근한 후, 얻은 파일을 파싱하여 리스 디바이
스들의 정보들을 가져올 수 있었음.
 OpewnWrt 공유기 성능의 한계
들어주셔서 감사합니다.

More Related Content

What's hot

차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서Jeongmin Cha
 
김종욱 포트폴리오
김종욱 포트폴리오김종욱 포트폴리오
김종욱 포트폴리오Jonguk Kim
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Park JoongSoo
 
Google Firebase
Google FirebaseGoogle Firebase
Google FirebaseAliZaidi94
 
dominocamp2022.t1s1.dde.pptx
dominocamp2022.t1s1.dde.pptxdominocamp2022.t1s1.dde.pptx
dominocamp2022.t1s1.dde.pptxUlrich Krause
 
Integration Testing with a Citrus twist
Integration Testing with a Citrus twistIntegration Testing with a Citrus twist
Integration Testing with a Citrus twistchristophd
 
Undertow RequestBufferingHandler 소개
Undertow RequestBufferingHandler 소개Undertow RequestBufferingHandler 소개
Undertow RequestBufferingHandler 소개Ted Won
 
Introduction to Django CMS
Introduction to Django CMS Introduction to Django CMS
Introduction to Django CMS Pim Van Heuven
 
Camel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdfCamel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdfClaus Ibsen
 
Hunting for security bugs in AEM webapps
Hunting for security bugs in AEM webappsHunting for security bugs in AEM webapps
Hunting for security bugs in AEM webappsMikhail Egorov
 
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...Zabbix
 
Using GitHub Actions to Deploy your Workloads to Azure
Using GitHub Actions to Deploy your Workloads to AzureUsing GitHub Actions to Deploy your Workloads to Azure
Using GitHub Actions to Deploy your Workloads to AzureKasun Kodagoda
 
Inform2015 - What's New in Domino 9 & 9.0.1 for Admins
Inform2015 - What's New in Domino 9 & 9.0.1 for AdminsInform2015 - What's New in Domino 9 & 9.0.1 for Admins
Inform2015 - What's New in Domino 9 & 9.0.1 for AdminsJared Roberts
 
Pentesting Android Applications
Pentesting Android ApplicationsPentesting Android Applications
Pentesting Android ApplicationsCláudio André
 
Introduction to Firebase
Introduction to FirebaseIntroduction to Firebase
Introduction to FirebaseMustafa Şenel
 
Understanding Cross-site Request Forgery
Understanding Cross-site Request ForgeryUnderstanding Cross-site Request Forgery
Understanding Cross-site Request ForgeryDaniel Miessler
 

What's hot (20)

차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
 
김종욱 포트폴리오
김종욱 포트폴리오김종욱 포트폴리오
김종욱 포트폴리오
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
 
Google Firebase
Google FirebaseGoogle Firebase
Google Firebase
 
dominocamp2022.t1s1.dde.pptx
dominocamp2022.t1s1.dde.pptxdominocamp2022.t1s1.dde.pptx
dominocamp2022.t1s1.dde.pptx
 
Integration Testing with a Citrus twist
Integration Testing with a Citrus twistIntegration Testing with a Citrus twist
Integration Testing with a Citrus twist
 
Undertow RequestBufferingHandler 소개
Undertow RequestBufferingHandler 소개Undertow RequestBufferingHandler 소개
Undertow RequestBufferingHandler 소개
 
Sql lite android
Sql lite androidSql lite android
Sql lite android
 
oracle-reports6i
oracle-reports6ioracle-reports6i
oracle-reports6i
 
Introduction to Django CMS
Introduction to Django CMS Introduction to Django CMS
Introduction to Django CMS
 
Introduction to Firebase from Google
Introduction to Firebase from GoogleIntroduction to Firebase from Google
Introduction to Firebase from Google
 
Camel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdfCamel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdf
 
Hunting for security bugs in AEM webapps
Hunting for security bugs in AEM webappsHunting for security bugs in AEM webapps
Hunting for security bugs in AEM webapps
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
 
Using GitHub Actions to Deploy your Workloads to Azure
Using GitHub Actions to Deploy your Workloads to AzureUsing GitHub Actions to Deploy your Workloads to Azure
Using GitHub Actions to Deploy your Workloads to Azure
 
Inform2015 - What's New in Domino 9 & 9.0.1 for Admins
Inform2015 - What's New in Domino 9 & 9.0.1 for AdminsInform2015 - What's New in Domino 9 & 9.0.1 for Admins
Inform2015 - What's New in Domino 9 & 9.0.1 for Admins
 
Pentesting Android Applications
Pentesting Android ApplicationsPentesting Android Applications
Pentesting Android Applications
 
Introduction to Firebase
Introduction to FirebaseIntroduction to Firebase
Introduction to Firebase
 
Understanding Cross-site Request Forgery
Understanding Cross-site Request ForgeryUnderstanding Cross-site Request Forgery
Understanding Cross-site Request Forgery
 

Similar to 시스템 프로그램 설계1 최종발표

2014_서버용 자료유출방지 솔루션_시온
2014_서버용 자료유출방지 솔루션_시온2014_서버용 자료유출방지 솔루션_시온
2014_서버용 자료유출방지 솔루션_시온시온시큐리티
 
Safe Box solution for data protecting
Safe Box solution for data protectingSafe Box solution for data protecting
Safe Box solution for data protectinglunchNtouch
 
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)YoungSu Son
 
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기Chanwoong Kim
 
장호상, 유재우 제안서 130327
장호상, 유재우 제안서 130327장호상, 유재우 제안서 130327
장호상, 유재우 제안서 130327호상 장
 
10 동기및비동기장치io
10 동기및비동기장치io10 동기및비동기장치io
10 동기및비동기장치iossuser3fb17c
 
33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"hyu_jaram
 
Linux 강의자료 ed10
Linux 강의자료 ed10Linux 강의자료 ed10
Linux 강의자료 ed10hungrok
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱NAVER D2
 
NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템tcaesvk
 
Android Network
Android NetworkAndroid Network
Android Networkcooddy
 
무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까
무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까
무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까Young D
 
[123] electron 김성훈
[123] electron 김성훈[123] electron 김성훈
[123] electron 김성훈NAVER D2
 
1. Docker Network (1)
1. Docker Network (1)1. Docker Network (1)
1. Docker Network (1)DEVELOPER.NET
 
Why OpenStack is Operating System?
Why OpenStack is Operating System?Why OpenStack is Operating System?
Why OpenStack is Operating System?유명환 FunFun Yoo
 

Similar to 시스템 프로그램 설계1 최종발표 (20)

2014_서버용 자료유출방지 솔루션_시온
2014_서버용 자료유출방지 솔루션_시온2014_서버용 자료유출방지 솔루션_시온
2014_서버용 자료유출방지 솔루션_시온
 
컴퓨터개론11
컴퓨터개론11컴퓨터개론11
컴퓨터개론11
 
Safe Box solution for data protecting
Safe Box solution for data protectingSafe Box solution for data protecting
Safe Box solution for data protecting
 
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
 
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
[NDC18] 만들고 붓고 부수고 - 〈야생의 땅: 듀랑고〉 서버 관리 배포 이야기
 
장호상, 유재우 제안서 130327
장호상, 유재우 제안서 130327장호상, 유재우 제안서 130327
장호상, 유재우 제안서 130327
 
10 동기및비동기장치io
10 동기및비동기장치io10 동기및비동기장치io
10 동기및비동기장치io
 
33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"33기 여채린 "리눅스에 대한 소개"
33기 여채린 "리눅스에 대한 소개"
 
Linux 강의자료 ed10
Linux 강의자료 ed10Linux 강의자료 ed10
Linux 강의자료 ed10
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱
 
201412 epp mdm_시온
201412 epp mdm_시온201412 epp mdm_시온
201412 epp mdm_시온
 
NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템
 
Android Network
Android NetworkAndroid Network
Android Network
 
System+os study 1
System+os study 1System+os study 1
System+os study 1
 
무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까
무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까
무선 랜으로 파일 전송할 때 왜 무선 마우스 랙이 발생할까
 
[123] electron 김성훈
[123] electron 김성훈[123] electron 김성훈
[123] electron 김성훈
 
Docker osc 0508
Docker osc 0508Docker osc 0508
Docker osc 0508
 
시큐어디스크 ECM
시큐어디스크 ECM시큐어디스크 ECM
시큐어디스크 ECM
 
1. Docker Network (1)
1. Docker Network (1)1. Docker Network (1)
1. Docker Network (1)
 
Why OpenStack is Operating System?
Why OpenStack is Operating System?Why OpenStack is Operating System?
Why OpenStack is Operating System?
 

More from Jeongmin Cha

Causal Effect Inference with Deep Latent-Variable Models
Causal Effect Inference with Deep Latent-Variable ModelsCausal Effect Inference with Deep Latent-Variable Models
Causal Effect Inference with Deep Latent-Variable ModelsJeongmin Cha
 
Composing graphical models with neural networks for structured representatio...
Composing graphical models with  neural networks for structured representatio...Composing graphical models with  neural networks for structured representatio...
Composing graphical models with neural networks for structured representatio...Jeongmin Cha
 
Sparse Additive Models (SPAM)
Sparse Additive Models (SPAM)Sparse Additive Models (SPAM)
Sparse Additive Models (SPAM)Jeongmin Cha
 
Waterful Application (iOS + AppleWatch)
Waterful Application (iOS + AppleWatch)Waterful Application (iOS + AppleWatch)
Waterful Application (iOS + AppleWatch)Jeongmin Cha
 
시스템 프로그램 설계 2 최종발표 (차정민, 조경재)
시스템 프로그램 설계 2 최종발표 (차정민, 조경재)시스템 프로그램 설계 2 최종발표 (차정민, 조경재)
시스템 프로그램 설계 2 최종발표 (차정민, 조경재)Jeongmin Cha
 
마이크로프로세서 응용(2013-2)
마이크로프로세서 응용(2013-2)마이크로프로세서 응용(2013-2)
마이크로프로세서 응용(2013-2)Jeongmin Cha
 
최종발표
최종발표최종발표
최종발표Jeongmin Cha
 

More from Jeongmin Cha (7)

Causal Effect Inference with Deep Latent-Variable Models
Causal Effect Inference with Deep Latent-Variable ModelsCausal Effect Inference with Deep Latent-Variable Models
Causal Effect Inference with Deep Latent-Variable Models
 
Composing graphical models with neural networks for structured representatio...
Composing graphical models with  neural networks for structured representatio...Composing graphical models with  neural networks for structured representatio...
Composing graphical models with neural networks for structured representatio...
 
Sparse Additive Models (SPAM)
Sparse Additive Models (SPAM)Sparse Additive Models (SPAM)
Sparse Additive Models (SPAM)
 
Waterful Application (iOS + AppleWatch)
Waterful Application (iOS + AppleWatch)Waterful Application (iOS + AppleWatch)
Waterful Application (iOS + AppleWatch)
 
시스템 프로그램 설계 2 최종발표 (차정민, 조경재)
시스템 프로그램 설계 2 최종발표 (차정민, 조경재)시스템 프로그램 설계 2 최종발표 (차정민, 조경재)
시스템 프로그램 설계 2 최종발표 (차정민, 조경재)
 
마이크로프로세서 응용(2013-2)
마이크로프로세서 응용(2013-2)마이크로프로세서 응용(2013-2)
마이크로프로세서 응용(2013-2)
 
최종발표
최종발표최종발표
최종발표
 

시스템 프로그램 설계1 최종발표

  • 1. 시스템 프로그램 설계1 최종발표 Network Attached Devices 한양대학교 컴퓨터전공 2012003738 차정민 2009004311 주경민
  • 2. 발표 목차 프로젝트의 개요 기존의 목표 및 발전 사항 프로젝트 세부 사항 (구현) 구현 시뮬레이션 어려웠던 점 / 배운 점
  • 3. 프로젝트의 개요  공유기에 연결된 네트워크 저장 장치들을 통합하여 사용 할 수 있도록 만들어보자!  공유기에 연결되어 인터넷을 리스하는 모든 장치들을 원격으로 접속하여 파일시스템을 관리함.  공유기를 통해 연결되어 있는 장치들을 통합된 인터페이스 로 관리한다.
  • 4. 기존의 목표  중간 제안에서는 기존의 NAS(Network-attached storage)를 공유기와 기타 네트워크 장치를 통해 구현하는 것이 목표였 음.  스마트 폰과 OpenWrt 조합을 통해 스마트 폰의 확장성을 이 용하여 부가적인 기능을 활용.  (NAS 그림 인터넷에서 하나 따와서 붙일 것)
  • 5. 발전 사항  접근할 수 있는 네트워크 저장 장치가 하나가 아니라, 공유기 에 접속하고 있는 네크워크 장치들을 통합한다.  공유기에 접속해 있는 다수의 네트워크 저장 장치  공유기를 통한 접근으로 용이한 외부로부터의 접근  외부에서도 다양한 네트워크 저장 장치들을 공유기를 통해 관리가 가능해진 것.
  • 6. 상황 그림 하나 넣을 것
  • 7. 프로젝트 세부 사항 (1)  클라이언트 프로그램은 모든 웹브라우저 내에서 작동하는 웹앱 형태로 구현함.  파일 시스템을 관리하는 것은 아무나 하면 안되므로 로그인 기능 구현  로그인 후 메인 페이지에서 네트워크 저장 장치 관리
  • 8. 프로젝트 세부 사항 (2)  메인 페이지 상단에는 파일 시스템의 목록  메인 페이지 중간에는 파일 시스템 관리 창  네트워크 저장 장치는 네트워크 드라이브 마운트를 통해 OpenWrt와 연결
  • 9. 프로젝트 세부 사항 (3)  파일 시스템의 목록의 마지막에는 늘 “+”로 파일 시스템을 추가하는 기작의 버튼이 있음.  파일 시스템을 등록할 때, 파일 시스템의 로컬 주소, 사용할 포트, 파일 시스템에 접속하는 유저이름, 비밀번호, 파일시스 템의 이름 등을 입력 받고, 데이터베이스에 저장.  파일 시스템을 등록하는 시점에서, 등록한 파일시스템이 사 용가능한 상태인지 판단하여 알려줌.
  • 10. 어려웠던 점 (1)  처음에는 파일 관리를 ftp 접속으로 하려고 했으나, 외부에서 는 로컬내의 네트워크 저장 장치 접근이 어려움.  파일 다운로드를 위해서는 직접적인 접근이 요구되어 부담 이 증가  크로스 도메인 문제  리스팅/업로드/다운로드/수정/삭제를 직접 구현함.  마운트를 통해 직접 해당 장치의 파일 시스템을 관리
  • 11. 어려웠던 점 (1)  크로스 도메인 문제  처음에는 파일 관리를 ftp 접속으로 하려고 했으나, 외부에서 는 로컬내의 네트워크 저장 장치 접근이 어려움.  파일 다운로드를 위해서는 직접적인 접근이 요구되어 부담 이 증가  리스팅/업로드/다운로드/수정/삭제를 직접 구현함.  데이터 베이스에는 등록된 리스 디바이스들의 로컬 주소가 저장. 단순히 ftp 접속으로 하는 경우 실제 IP 주소가 필요함.  따라서 마운트를 통해 직접 해당 장치의 파일 시스템을 관리
  • 12. 어려웠던 점 (1)  크로스 도메인 문제
  • 13. 어려웠던 점 (1)  처음에는 파일 관리를 ftp 접속으로 하려고 했으나, 외부에서 는 로컬내의 네트워크 저장 장치 접근이 어려움.  파일 다운로드를 위해서는 직접적인 접근이 요구되어 부담 이 증가  크로스 도메인 문제  리스팅/업로드/다운로드/수정/삭제를 직접 구현함.  마운트를 통해 직접 해당 장치의 파일 시스템을 관리  CIFS(Common Internet File System)
  • 14. 어려웠던 점 (2)  디바이스가 현재 공유기에 물려있는지 확인하려면 공유기 시스템 정보를 가져와야 함.  장치의 네트워크 연결 외에 마운트 상황을 확인해야 함.  어차피 웹사이트가 php로 구현되었으므로, php를 이용해서 시스템 파일에 접근한 후, 얻은 파일을 파싱하여 리스 디바이 스들의 정보들을 가져올 수 있었음.  OpewnWrt 공유기 성능의 한계