1 / 40

Synology Technology

Synology Technology. Alex Wang May 1, 2008. Outline. Hardware architecture Software architecture Performance Competitive cost Quality. Hardware Architecture. Hardware Specification. DS407 Board. Software Architecture. Software Architecture.

aulani
Download Presentation

Synology Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Synology Technology Alex Wang May 1, 2008

  2. Outline • Hardware architecture • Software architecture • Performance • Competitive cost • Quality

  3. Hardware Architecture

  4. Hardware Specification

  5. DS407 Board

  6. Software Architecture

  7. Software Architecture • 1 source tree for multiple platform5 CPU, 19 models • Only change boot loader, kernel, and toolchain • Sometimes build our own toolchaincrosstool: http://www.kegel.com/crosstool/ • Chroot build process

  8. Flash Layout 2 MB 4 MB Kernel 0x200000, 2MB Kernel 0xD0000, 832 KB Hw config (0x10000) Reserved 0x20000 Ramdisk 0x180000, 1.5MB ppcboot (0x40000) Ramdisk 0xD0000, 704KB Hw config (0x10000) Reserved 0x20000 FIS directory (0x10000) FIS directory (0x10000) uboot (0x40000)

  9. Boot Procedure Kernel mounts memory disk Flash RAM 6 Ramdisk init Ramdisk 3 initrd 0x800000 0xFFE00000 7 Kernel Kernel 2 5 Ramdisk linuxrc.syno 0xFFC00000 0x80000 Copy kernel to RAM 1 8 8 4 Jump to kernel Disk /etc/rc Boot loader Ramdisk /etc/rc

  10. Boot Procedure

  11. Software Architecture Web Applications Management UI Network Service Synology SDK Library Linux Kernel, 2.6.15, 2.4.22 Disk Driver Network Driver USB Driver Synology HW driver

  12. Performance

  13. RAID 5 Read Performance Intel Celeron 3.2GHz Celeron M 1.5 GHz ARM 500 MHz ARM 500 MHz ARM 500 MHz

  14. RAID 5 Read Performance Intel Celeron 3.2GHz Celeron M 1.5 GHz ARM 500 MHz PowerPC 266 MHz ARM 500 MHz

  15. RAID 5 Write Performance

  16. RAID 5 Read Performance • 40% faster then original Linux kernelFTP download from 26 MB/s to 37 MB/s • 1 year ahead to Linux kernel • How?

  17. RAID 5 Read Performance • At least 3 disks • Allow 1 disk failure P 1 2 3 6 4 5 P 9 7 P 8 12 P 10 11

  18. RAID 5 Read Performance Read buffer Memory copy Stripe Cache (Used to check data consistency) Memory copy P 1 2 3 6 4 5 P 9 7 P 8 12 P 10 11

  19. Reduce Memory Copy • Download file for (;;) { cnt = read(file_fd, buf, sizeof(buf)); if (cnt <= 0) break; for (len = cnt, bp = buf; len > 0;) { cnt = write(sock_fd, bp, len); if (cnt < 0) error; len -= cnt; bp+=cnt; } }

  20. Reduce Memory Copy User space daemon Kernel Disk read() memory copy write() Network memory copy

  21. Reduce Memory Copy cnt = sendfile(sock_fd, file_fd, offset, filesize); User space daemon Kernel Disk sendfile() Network

  22. Large Directory Handling • Windows uses case-insensitive • Unix/Linux is case-sensitive • How would Samba do to pretend it is case-insensitive? • Create/rename/delete/lookup

  23. Large Directory Handling • Enumerate all files in the directory, convert file name to upper and do string compare! • What if there are more than 10,000 files in a directory?

  24. Large Directory Handling • Modify EXT3 file system to be case-insensitive • Port EXT3 directory hash to 2.4 kernelopen() 10,000 files from 2mins to 10 sec

  25. Competitive Cost

  26. Competitive Cost • We are small company • NAS is a small market • Big companies get lower price because they can share parts between different products • How to compete? Software!!

  27. Competitive Cost – Flash size • We use 2 MB or 4 MB flash • Our competitor uses 16 MB flash(or 512 KB flash and bundle disk) • Don't bundle disk to avoid the risk of disk price decline

  28. Competitive Cost – Flash size • Use 2.4 kernelsmaller footprint, better performance, FTP 20% faster • Network installationThe ramdisk in flash provides minimize function for installation only

  29. Competitive Cost – Power Supply • A 1TB Disk needs 40W • PC server uses 350W power supply, noisy, large • We use 100W adapter for 4 disk model, quiet, small • 100 W for 4 disk+PCB?

  30. Competitive Cost – Power Supply • Disk spin up 35 W • Disk access 14 W • Disk idle 12 W • Disk hibernation 0 W • PCB 7~12 W • Power up sequence

  31. Competitive Cost – Power Supply

  32. Competitive Cost – Power Supply • Power up sequenceSoftware delay until disk ready, 40 seconds • How about hibernation?

  33. Competitive Cost – Power Supply • Ask disk whether disk is hibernating before access it • When disk is hibernating and wake up the first disk • If other disks are waking up, put into queue to delay wake up • Extra command to ask status? Performance?

  34. Quality

  35. Quality - Reliability • Mass stress 12pic x 14days for every release • MP - Stress memory for 24 hours • MP - Stress with disk for 24 hours • Production cost: 4 disks x 100 pics • Production capacity: 100 per day

  36. Quality – Software Dainty • Continuous free firmware upgrade • Take care on small details • File created time • Unicode conversion • Extended attribute • RAID error handling

  37. Quality – RAID Error Handling • Read error? P 1 2 B 6 4 5 P 9 7 P 8 12 P 10 11

  38. Quality – RAID Error Handling • Rewrite to leverage disk bad sector mapping P 1 2 B 6 4 5 P 9 7 P 8 12 P 10 11 3

  39. Q&A • Yes, we are hiring

More Related